Informazioni sul filesystem montato /mnt/c
- Che cosa è esattamente / mnt / c / Users / rispetto a C: \ Users \? Sembra che siano una cosa sola --- quindi cos'è / mnt / c /?
A differenza di Windows, Linux (e gli altri sistemi basati su Unix) usano una singola struttura di cartelle indipendente dal numero di dischi che hai. Se si dispone di più dischi, tutti questi dischi devono essere montati nella struttura delle cartelle a un certo punto.
- In genere, tutti i dischi (diversi da quelli utilizzati per l'avvio del sistema) sono montati in una cartella denominata
/mnt
o/media
WSL ha un tipo speciale di filesystem chiamato DrvFS che ti dà accesso ai dischi usati in Windows. Puoi usare DrvFS per montare, non solo il tuo filesystem di Windows, ma anche dischi di rete e altri tipi di media.
- In WSL, per impostazione predefinita, il
C:
disco in Windows è montato sotto/mnt/c
- Se si dispone di un altro disco, ad esempio un
D:
disco in Windows, verrà montato sotto/mnt/d
I file che puoi vedere /mnt/c
sono gli stessi che hai C:
. Se modifichi alcuni file, otterrai le modifiche anche nelle finestre.
È possibile utilizzare il mount
comando per accedere ad altri tipi di media (ad esempio unità rimovibili o condivisioni di rete).
Sulla posizione di /home/<username>
- Come posso visualizzare i file in / home / usando Esplora file di Windows? Non che avrei mai voluto --- Sto solo cercando di capire come Windows sta organizzando questo sottosistema per Linux.
In WSL, tutto il filesystem linux si trova in una cartella Windows. Il percorso della cartella dipende dalla versione di Windows e dalla distribuzione WSL in uso.
- Le versioni iniziali di WSL memorizzano il filesystem linux in
%LOCALAPPDATA%\Lxss\rootfs
- Le distribuzioni WSL installate da Windows Store , a partire da Windows Build 16215 (metà 2017), utilizzano una cartella simile
%LOCALAPPDATA%\Packages\...\LocalState\rootfs
. Il nome del pacchetto varia a seconda della distribuzione (ad esempio, è diverso per Ubuntu rispetto a Debian)
- Le distribuzioni Linux installate utilizzando altri strumenti , come lxRunOffline o WSL-DistroLauncher, possono archiviare il filesystem linux in qualsiasi posizione.
È possibile selezionare molte opzioni per conoscere la posizione della cartella WSL . Ad esempio, penso che l'opzione più semplice sia usare lxRunOffline per conoscere la cartella di installazione.
## You can use lxrunoffline to check which WSL distributions have installed
## using: lxrunoffline list
C:\> lxrunoffline list
backup
Ubuntu-18.04
## And you can use it to get the location of any of these WSL installations
## using: lxrunoffline get-dir -n <name of distribution>
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
Una volta che conosci la posizione della cartella di installazione, /home/<username>
è sotto <installation folder>\rootfs\home\username
.
- Ad esempio, se la cartella di installazione è
c:\wsl\ubuntu
- la
/home/<username>
si trova inc:\wsl\ubuntu\rootfs\home\username
NOTA: Sia Linux che Windows memorizzano le autorizzazioni dei file in diversi modi. Oggigiorno, WSL DrvFS memorizza le autorizzazioni Linux come stream (metadati) allegati ai file che è possibile visualizzare in Windows. Microsoft non consiglia di modificare i file Linux utilizzando i programmi Windows. È possibile che alcune applicazioni di Windows danneggino le autorizzazioni di Linux senza accorgersene.