Lorsque je démarre bash
sur Windows Subsystem for Linux, il me dépose dans le répertoire
/mnt/c/Users/<username>
Lorsque je ls
ce répertoire, je vois les répertoires Desktop
, Documents
etc. que je peux voir sont en C:\Users\<username>
utilisant l'Explorateur de fichiers Windows. Puisque c'est là que le bash
programme a commencé, je m'attendais à ce que ce soit mon répertoire personnel, mais lorsque je tape l'un cd
ou l' autre, cd ~
je suis amené à
/home/<username>
qui contient mon .bashrc
, .profile
etc. fichier que je m'attendrais à trouver dans mon répertoire personnel dans une boîte Linux. De plus, en entrant à cd ../..
partir d'ici, je peux voir les répertoires bin
, etc
etc., comme prévu sur une boîte Linux.
J'ai deux questions concernant tout cela:
- À quoi est-il
/mnt/c/Users/<username>
comparé exactementC:\Users\<username>
? Il semble qu'ils soient un dans le même --- alors qu'est-ce que c'est/mnt/c/
? - Comment puis-je afficher les fichiers en
/home/<username>
utilisant l'explorateur de fichiers Windows? Non pas que j'aurais vraiment envie de le faire --- J'essaie juste de comprendre comment Windows organise ce sous-système pour Linux.
Réponses:
Pour 2: le chemin d'accès actuel est désormais lié à la distribution que vous avez installée à partir du Microsoft Store plutôt qu'à un chemin d'accès global. Donc, pour Ubuntu, il est maintenant situé à:
Je suppose que les autres distributions seront dans un emplacement similaire sous leurs dossiers respectifs sous:
la source
/mnt/c/
là que je stocke tout dans WSL. J'adorerais que WSL soit inversé en LWS; ce qui signifie que ce serait génial si nous exécutions tous Ubuntu avec des sous-systèmes Linux pour Windows pour exécuter une copie complète de Windows 10 intégrée à Ubuntu. Je sais, ce serait beaucoup plus difficile mais on peut rêver./mnt/c
est exactement le même queC:\
. C'est juste la syntaxe pour y accéder depuis WSL.C:\Users\<username>\AppData\Local\Lxss\rootfs
.la source
C:\Users\[USERNAME]\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_[CODE]\LocalState\rootfs\
Vous pourriez savoir à quel point si vous modifiez/
manuellementÀ propos du système de fichiers monté sur
/mnt/c
Contrairement à Windows, Linux (et les autres systèmes basés sur Unix) utilisent une structure de dossiers unique indépendante du nombre de disques dont vous disposez. Si vous avez plusieurs disques, tous ces disques doivent être montés dans la structure de dossiers à un moment donné.
/mnt
ou/media
WSL possède un type spécial de système de fichiers nommé DrvFS qui vous donne accès aux disques utilisés dans les fenêtres. Vous pouvez utiliser DrvFS pour monter, non seulement votre système de fichiers Windows, mais également des disques réseau et d'autres types de médias.
C:
disque dans Windows est monté sous/mnt/c
D:
disque sous Windows, il sera monté sous/mnt/d
Les fichiers que vous pouvez voir
/mnt/c
sont les mêmes que vousC:
. Si vous modifiez un fichier, vous obtiendrez également les modifications dans les fenêtres.Vous pouvez utiliser la
mount
commande pour accéder à d'autres types de supports (par exemple des lecteurs amovibles ou des partages réseau).À propos de l'emplacement de
/home/<username>
Dans WSL, tout le système de fichiers Linux est situé sous un dossier Windows. L'emplacement du dossier dépend de la version de Windows et de la distribution WSL que vous utilisez.
%LOCALAPPDATA%\Lxss\rootfs
%LOCALAPPDATA%\Packages\...\LocalState\rootfs
. Le nom du paquet varie en fonction de la distribution (par exemple, il est différent pour Ubuntu que pour Debian)Vous pouvez vérifier de nombreuses options pour connaître l'emplacement du dossier WSL . Par exemple, je pense que l'option la plus simple est d'utiliser lxRunOffline pour connaître le dossier d'installation.
Une fois que vous connaissez l'emplacement du dossier d'installation, le
/home/<username>
est sous<installation folder>\rootfs\home\username
.c:\wsl\ubuntu
/home/<username>
est dansc:\wsl\ubuntu\rootfs\home\username
REMARQUE: Linux et Windows stockent les autorisations de fichiers de différentes manières. De nos jours, le WSL DrvFS stocke les autorisations Linux sous forme de flux (métadonnées) attachés aux fichiers que vous pouvez voir dans Windows. Microsoft ne recommande pas de modifier les fichiers linux à l'aide de programmes Windows. Il est possible que certaines applications Windows endommagent les autorisations Linux sans le remarquer.
la source
Je suppose que cela peut dépendre de la version de Windows sur laquelle vous vous trouvez, mais pour moi en 2018 sur Windows 10 Pro 64 bits, version 1709 (OS Build 16299.522) et également la version 1803 (OS Build 17134.165) [une mise à jour Windows s'est produite ironiquement lorsque je tapais ceci] l'emplacement est toujours:
C:\Users\<username>\AppData\Local\lxss
L'astuce est que lorsque vous y êtes,
C:\Users\<username>\AppData\Local
vous ne verrez pas delxss
dossier (sauf si vous avez décoché "Masquer les fichiers protégés du système d'exploitation (recommandé)" dans vos options de dossier).Cependant, ajoutez simplement
\lxss
dans la barre d'adresse de l'explorateur Windows et il vous amènera au dossier.(Notez que je n'avais pas un
%LOCALAPPDATA%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
ou quelque chose de similaire qui a été mentionné dans la réponse de Michael Bonds)Mise à jour
Il s'avère qu'il existe un WSL hérité qui est ce que j'avais installé. Maintenant, WSL est fourni via une application Microsoft Store. Il existe des versions pour Ubuntu 18.04 LTS et aussi maintenant quelques autres versions de Linux (par exemple Debian). Si vous souhaitez être à jour, vous pouvez désinstaller l'ancien WSL et installer la version de Microsoft Store .
L'emplacement de votre dossier de départ dépendra du type de WSL que vous aurez installé.
la source
la source
Quatre étapes pour que Windows 10 Pro épingle votre Debian / Ubuntu / OpenSUSE $ HOME dans le menu de démarrage de Windows:
Vous avez maintenant votre répertoire personnel épinglé à votre menu de démarrage. J'ai essayé de créer un raccourci mais cela ne va nulle part intelligible.
la source
J'avais juste besoin de trouver en
/etc/environment
utilisant Ubuntu 16.04 en regardant dans le stockage Windows 10 NTFS. Je l'ai trouvé ici:/mnt/c/
àC:\
pour la nomenclature de Windows./
la\
pour même raison.USER_NAME
par votre nom d'utilisateur Windows.sudo -H Nautilus
pour obtenir des autorisations pour afficher les fichiers utilisateur stockés dans WSL.Du côté Linux (Ubuntu 16.04), la nomenclature serait:
la source
Avec Windows 10 Insider actuel (Fast ring: Windows 10 build 19025.1), vous pouvez monter votre distribution en tant que lecteur réseau. WSL est accessible en tant que
wls$
, le chemin est votre nom de distribution (wsl -l -q
).Par exemple
net use Z: \\wsl$\Debian /PERSISTENT:YES
la source
Dans Bash, pour afficher le répertoire actuel dans l'Explorateur de fichiers Windows, entrez simplement:
Ne laissez pas de côté le "." Cela ouvrira l'explorateur Windows dans le dossier actuel et vous pourrez voir où tout se trouve par rapport au reste de votre système Windows.
la source