Om het bestand of de mapmachtigingen te wijzigen, gebruik je de opdrachtchmod
(wijzigingsmodus). Er zijn twee manieren om chmod te gebruiken, de symbolische modus en de absolute modus.
De gemakkelijkste manier voor een beginner om bestands- of mapmachtigingen te wijzigen, is door de symbolische modus te gebruiken. Met symbolische machtigingen kun je de gewenste machtigingenset toevoegen, verwijderen of specificeren met behulp van de operators in de volgende tabel.
No. | Chmod-operator en beschrijving |
---|---|
1 |
+ Voegt de aangewezen machtiging (en) toe aan een bestand of map. |
2 |
- Verwijdert de aangewezen toestemming (en) uit een bestand of map. |
3 |
= Stelt de aangewezen toestemming (en) in. |
Hier is een voorbeeld met testfile. Het draaien van ls -l op het testbestand laat zien dat de permissies van het bestand als volgt zijn -
$ls -l testfile -rwxrwxr-- 1 patrick users 1024 Nov 2 00:10 testfile
Vervolgens wordt elk voorbeeld van een chmod opdracht uit de voorgaande tabel uitgevoerd op het testbestand, gevolgd door ls –l , zodat je de permissieveranderingen kunt zien:
$chmod o+wx testfile $ls -l testfile -rwxrwxrwx 1 patrick users 1024 Nov 2 00:10 testfile $chmod u-x testfile $ls -l testfile -rw-rwxrwx 1 patrick users 1024 Nov 2 00:10 testfile $chmod g=rx testfile $ls -l testfile -rw-r-xrwx 1 patrick users 1024 Nov 2 00:10 testfile
Hier lees je hoe je deze opdrachten op één regel kunt combineren:
$chmod o+wx,u-x,g=rx testfile $ls -l testfile -rw-r-xrwx 1 patrick users 1024 Nov 2 00:10 testfile
De tweede manier om permissies te wijzigen met het chmod commando is om een nummer te gebruiken om elke set permissies voor het bestand te specificeren.
Elke machtiging krijgt een waarde toegewezen, zoals de volgende tabel laat zien, en het totaal van elke set machtigingen geeft een nummer voor die set.
Aantal | Octal Permission Representation | Ref |
---|---|---|
0 | Geen toestemming | --- |
1 | Uitvoeren toestemming | --x |
2 | Schrijf toestemming | -w- |
3 | Uitvoeren en schrijven toestemming: 1 (uitvoeren) + 2 (schrijven) = 3 | -wx |
4 | Lees toestemming | r-- |
5 | Lezen en uitvoeren toestemming: 4 (lezen) + 1 (uitvoeren) = 5 | rx |
6 | Lezen en schrijven toestemming: 4 (lezen) + 2 (schrijven) = 6 | rw- |
7 | Alle rechten: 4 (lezen) + 2 (schrijven) + 1 (uitvoeren) = 7 | rwx |
Hier is een voorbeeld met behulp van het testbestand. Het draaien van ls -l op het testbestand laat zien dat de permissies van het bestand als volgt zijn:
$ls -l testfile -rwxrwxr-- 1 patrick users 1024 Nov 2 00:10 testfile
Vervolgens wordt elk voorbeeld van een chmod opdracht uit de voorgaande tabel uitgevoerd op het testbestand, gevolgd door ls –l , zodat je de permissieveranderingen kunt zien:
$ chmod 755 testfile $ls -l testfile -rwxr-xr-x 1 patrick users 1024 Nov 2 00:10 testfile $chmod 743 testfile $ls -l testfile -rwxr---wx 1 patrick users 1024 Nov 2 00:10 testfile $chmod 043 testfile $ls -l testfile ----r---wx 1 patrick users 1024 Nov 2 00:10 testfile