Over het bestandssysteem gemount op /mnt/c
- Wat is precies /mnt/c/Users/ in vergelijking met C:\Users? Het lijkt erop dat ze één en hetzelfde zijn–dus wat is /mnt/c/?
In tegenstelling tot Windows, gebruiken Linux (en de andere systemen gebaseerd op Unix) een enkele mappenstructuur, onafhankelijk van het aantal schijven dat je hebt. Als je meerdere schijven hebt, moeten al deze schijven op een gegeven moment in de mappenstructuur gemount worden.
- Normaal gesproken worden alle schijven (anders dan die gebruikt worden om het systeem op te starten) aangekoppeld in een map met de naam
/mnt
of /media
WSL heeft een speciaal type bestandssysteem, DrvFS genaamd, dat je toegang geeft tot de schijven die in windows gebruikt worden. Je kunt DrvFS gebruiken om niet alleen je windows bestandssysteem te mounten, maar ook netwerkschijven en andere mediatypen.
- In WSL, standaard, is de
C:
schijf in windows gemount onder /mnt/c
- Als je een andere schijf hebt, bijvoorbeeld een
D:
schijf in windows, zal deze gemount worden onder /mnt/d
De bestanden die je kunt zien in /mnt/c
zijn dezelfde als die je hebt in C:
. Als je een bestand wijzigt, krijg je de wijzigingen ook in windows te zien.
Je kunt het mount
commando gebruiken om toegang te krijgen tot andere soorten media (b.v. verwisselbare schijven of netwerk shares).
Over de locatie van /home/<username>
- Hoe kan ik de bestanden in /home/ bekijken met de Windows Bestandsverkenner? Niet dat ik dat ooit zou willen–Ik probeer alleen maar een idee te krijgen hoe Windows dit Subsysteem voor Linux organiseert.
In WSL, bevindt het hele Linux bestandssysteem zich onder een Windows map. De locatie van de map hangt af van de versie van Windows en van de WSL-distributie die je gebruikt.
- Initiële versies van WSL slaan het linux-bestandssysteem op in
%LOCALAPPDATA%\Lxss\rootfs
- WSL-distributies geïnstalleerd vanuit de Windows Store , vanaf Windows Build 16215 (medio 2017), gebruiken een map als
%LOCALAPPDATA%\Packages\...\LocalState\rootfs
. De naam van het pakket varieert afhankelijk van de distributie (het is bijvoorbeeld anders voor Ubuntu dan voor Debian)
- Linux-distributies geïnstalleerd met behulp van andere tools , zoals lxRunOffline of WSL-DistroLauncher kunnen het linux-bestandssysteem op elke locatie opslaan.
U kunt veel opties aanvinken om de locatie van de WSL-map te weten . Ik denk bijvoorbeeld dat de makkelijkste optie is om lxRunOffline te gebruiken om de installatiemap te weten.
## 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
Zodra u de locatie van de installatiemap weet, staat de /home/<username>
onder <installation folder>\rootfs\home\username
.
NOTE: Zowel Linux als Windows slaan de bestandspermissies op verschillende manieren op. Tegenwoordig slaat WSL DrvFS de Linux permissies op als Streams (metadata) gekoppeld aan de bestanden die je in Windows kunt zien. Microsoft raadt niet aan om Linux bestanden te wijzigen met Windows programma’s. Het is mogelijk dat sommige Windows programma’s de Linux permissies beschadigen zonder dat ze het merken.