Linux-gebruikers zijn zeker bekend met chown- en chmod-consoletools. Deze twee apps zijn essentieel als het gaat om toestemming en eigendomsbeheer. Onlangs heeft Microsoft een aantal verbeteringen aangebracht in deze tools in hun eigen Linux-subsysteem gebundeld met Windows 10.
Advertentie
U kunt nu de eigenaar en de groep bestanden instellen met chmod / chown en de machtigingen voor lezen / schrijven / uitvoeren in WSL wijzigen. U kunt ook speciale bestanden maken, zoals fifos, unix-sockets en apparaatbestanden. Voor veel WSL-gebruikers was het een langverwachte functie.
google play op amazon fire hd 10
Een andere interessante verandering zijn de nieuwe montage-opties met het DrvFs-bestandssysteem voor het projecteren van machtigingen op bestanden, naast het leveren van nieuwe Linux-metadata over bestanden en mappen.
Er is één stap die u moet nemen voordat u van deze nieuwe functies kunt genieten: u moet drvfs ontkoppelen en opnieuw koppelen met de vlag 'metadata'. Om dit te doen, voert u de volgende opdrachten in op de terminal:
sudo umount / mnt / c sudo mount -t drvfs C: / mnt / c -o metadata
U kunt controleren of het correct is aangekoppeld door 'mount -l' uit te voeren om zoiets als dit te zien:
DrvFs is een bestandssysteem-plug-in voor WSL die ondersteuning toevoegt voor interop tussen WSL en het Windows-bestandssysteem. Met DrvFs kan WSL schijven mounten met ondersteunde bestandssystemen onder / mnt, zoals / mnt / c, / mnt / d, enz.
DrvFs voegt een aantal nieuwe mount-opties toe. Ze zijn als volgt:
De nieuwe mount-opties zijn onder meer:
- uid: het gebruikers-ID dat wordt gebruikt voor de eigenaar van alle bestanden
- gid: de groeps-ID die wordt gebruikt voor de eigenaar van alle bestanden
- umask: een octaal masker van uit te sluiten machtigingen voor alle bestanden en mappen.
- fmask: een octaal masker van uit te sluiten machtigingen voor alle reguliere bestanden.
- dmask: een octaal masker van uit te sluiten machtigingen voor alle mappen.
Zie het volgende voorbeeld:
waarom werkt de startknop niet in Windows 10?
sudo mount -t drvfs C: / mnt / c -o metadata, uid = 1000, gid = 1000, umask = 22, fmask = 111
Na het uitvoeren van het mount-commando, zal je je mount (in dit geval C :) in de lijst zien staan met alle parameters die je hebt opgegeven bij het opvragen van een lijst met aangekoppelde apparaten.
Door deze wijziging kunnen Windows-mappen en -partities onder een andere gebruikersaccount in WSL worden gemount in plaats van het standaard een .
Met deze wijziging worden Linux-machtigingen opgeslagen als aanvullende metadata voor een bestand. Hierdoor kunnen zowel Linux- als Windows-machtigingen voor één bestand worden opgeslagen. Nu kunt u de machtigingen in zowel WSL als Windows afzonderlijk wijzigen zonder de omgeving te verstoren. Zoals u zich wellicht herinnert, het wijzigen van Linux-bestanden vanuit Windows kan WSL eerder breken .
Nieuw gemaakte bestanden in WSL worden standaard gemaakt met metadata en respecteren de mount-opties die je hebt ingesteld.
hoe alle foto's op icloud te verwijderen
Belangrijke voorbehouden
Er zijn een paar dingen waar u op moet letten wanneer u aan de nieuwe metadata sleutelt:
Het bewerken van een bestand met een Windows-editor kan de Linux-metagegevens van het bestand verwijderen. In dit geval keert het bestand terug naar de standaardrechten.
Als u alle schrijfbits op een bestand in WSL verwijdert, wordt het bestand door Windows als alleen-lezen gemarkeerd.
Als je meerdere WSL-distributies hebt geïnstalleerd of meerdere Windows-gebruikers met WSL geïnstalleerd, zullen ze allemaal dezelfde metagegevens voor dezelfde bestanden gebruiken. De uid's van elk WSL-gebruikersaccount kunnen verschillen. Dit iets om rekening mee te houden bij het instellen van machtigingen.
U kunt bijvoorbeeld schrijfrechten voor een bestand in Windows uitschakelen en chmod het bestand om te laten zien dat schrijfrechten zijn ingeschakeld in WSL. Of u kunt leesrechten hebben ingeschakeld onder Windows en leesrechten in WSL verwijderen. U kunt dit concept hieronder geïllustreerd zien.
Bron: Microsoft .