Il singolo file system root si trovava qui fino all'aggiornamento di Windows 10 Fall Creators (rilasciato a ottobre 2017):
%LOCALAPPDATA%\Lxss\rootfs
Ad esempio, C:\Users\Vigo\AppData\Local\Lxss\rootfs\
Altri punti di montaggio si trovano a un livello superiore nel lxss
directory. Ad esempio, il tuo home
directory all'interno di Linux sarà in %LOCALAPPDATA%\Lxss\home
.
A partire dall'aggiornamento Fall Creators, è possibile installare più di un'istanza di Linux ed eseguirle in parallelo. L'istanza esistente (ovvero legacy) rimarrà nella sua directory, ma le nuove istanze create si trovano in:
%LOCALAPPDATA%\Packages\<distribution_specific_name>_<random_string>\LocalState\rootfs
Ad esempio, la mia installazione di Ubuntu 18.04 si trova sotto
CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgscdirectory.
Avviso :Attenzione a non creare , modifica o elimina file che si trovano sotto lxss o un albero specifico della distribuzione da Windows.
L'esplorazione e la lettura dei file è l'unica operazione innocua. Vedi questa pagina del blog Microsoft per i dettagli.
Nota che a partire dalla Build 1903, esiste un modo alternativo per accedere ai file di una distribuzione in esecuzione che non presenta i problemi menzionati in precedenza.
Basta usare il percorso \\wsl$\<distribution_specific_name>\
e sarai in grado di creare e modificare file. L'AppData è ancora non un modo supportato per accedere ai file con build 1903.
Al giorno d'oggi, puoi installare più distribuzioni Linux. Pertanto, ogni distribuzione avrà il proprio filesystem situato in una cartella diversa.
- Se installi alcune distribuzioni Linux da Windows Store, i filesystem si trovano sotto
%USERPROFILE%\AppData\Local\Packages\...\LocalState\rootfs
- Se hai installato, spostato o duplicato una distribuzione Linux utilizzando LxRunOffline o qualsiasi versione di WSLDistroLauncher, il filesystem può trovarsi in qualsiasi cartella del tuo computer.
Ottenimento delle informazioni dal Registro
La posizione di ciascun filesystem può essere ottenuta dal registro di Windows. I dati si trovano sotto
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
Puoi avviare una finestra di PowerShell ed eseguire il seguente comando per ottenere le posizioni dei filesystem
PS> (Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | ForEach-Object {Get-ItemProperty $_.PSPath}) | select DistributionName, @{n="Path";e={$_.BasePath + "\rootfs"}}
Otterrai una tabella con informazioni come la seguente
DistributionName Path
---------------- ----
Ubuntu C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
Ubuntu-18.04 C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalState\rootfs
mydistro C:\wsl\mydistro\rootfs
Utilizzando lxRunOffline
LxRunOffline è uno strumento per la gestione delle distribuzioni Linux installate su WSL. Puoi utilizzare LxRunOffline per ottenere la directory utilizzata da una distribuzione installata
# lxrunoffline get-dir -n <name of the distro>
C:\> lxrunoffline get-dir -n backup
c:\wsl\installed\backup
C:\> lxrunoffline get-dir -n Ubuntu
C:\Users\Jaime\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState
Per WSL2 puoi accedere alla home directory da Windows Explorer in questo modo :
\\wsl$
Scusa il ritardo alla festa!