Belangrijkste punten
- 01De drie cijfers stellen machtigingen in voor de eigenaar, de groep en iedereen anders, in die volgorde.
- 02Elk cijfer is de som van lezen (4), schrijven (2) en uitvoeren (1) — dus 7 = alle drie, 5 = lezen + uitvoeren.
- 03755 is de standaard voor mappen en programma's; 644 is standaard voor normale bestanden; 777 is bijna altijd een fout.
Drie cijfers, drie doelgroepen
Op Linux en macOS heeft elk bestand en elke map machtigingen voor drie aparte gebruikersgroepen. Van links naar rechts gelden de drie cijfers in een modus zoals 755 voor: de eigenaar (de gebruiker die het bestand bezit), de groep (een set gebruikers die toegang delen) en anderen (letterlijk iedereen anders op het systeem). De volgorde verandert nooit — eigenaar, groep, anderen.
Dus 755 zegt: geef de eigenaar de machtiging beschreven door 7, geef de groep de machtiging beschreven door 5, en geef iedereen anders de machtiging beschreven door 5. Om het geheel te begrijpen, hoef je alleen te weten wat een enkel cijfer betekent. Vervolgens lees je dezelfde regel drie keer.
Hoe elk cijfer wordt opgebouwd: 4, 2, 1
Elk cijfer is een som van maximaal drie waarden. Leestoegang is 4 waard, schrijftoegang is 2 waard en uitvoertoegang is 1 waard. Tel de machtigingen die je wilt bij elkaar op en je krijgt een enkel cijfer van 0 tot 7. Omdat 4, 2 en 1 machten van twee zijn, produceert elke combinatie een uniek totaal — er is nooit enige onduidelijkheid.
Werk het cijfer 7 uit: 4 (lezen) + 2 (schrijven) + 1 (uitvoeren) = 7, dus 7 verleent alles. Het cijfer 5 is 4 (lezen) + 1 (uitvoeren) = 5, wat lezen en uitvoeren verleent maar niet schrijven. Het cijfer 6 is 4 + 2 = 6: lezen en schrijven, maar niet uitvoeren. Het cijfer 4 is alleen-lezen. Het cijfer 0 verleent niets.
Toegepast op 755: de eigenaar krijgt 7 (lezen, schrijven, uitvoeren — volledige controle), terwijl de groep en anderen elk 5 krijgen (lezen en uitvoeren, maar geen mogelijkheid om het bestand te wijzigen). Dit is precies wat je wilt voor een programma of een map die anderen kunnen gebruiken maar niet wijzigen.
De machtigingsmodi die je daadwerkelijk gebruikt
Bijna al het dagelijkse werk komt neer op een handvol modi. Hier is wat elk betekent en wanneer je het gebruikt.
- 01755 = rwxr-xr-x — eigenaar kan lezen, schrijven en uitvoeren; iedereen anders kan lezen en uitvoeren. De standaard voor mappen, scripts en uitvoerbare bestanden.
- 02644 = rw-r--r-- — eigenaar kan lezen en schrijven; iedereen anders kan alleen lezen. De standaard voor normale bestanden zoals HTML, tekst en afbeeldingen.
- 03700 = rwx------ — eigenaar heeft volledige controle; niemand anders kan zelfs kijken. Gebruik voor privémappen en persoonlijke scripts.
- 04600 = rw------- — eigenaar kan lezen en schrijven; iedereen anders is buitengesloten. Ideaal voor persoonlijke sleutels en configuratiebestanden met geheimen.
- 05775 = rwxrwxr-x — eigenaar en groep kunnen schrijven; anderen kunnen lezen en uitvoeren. Gebruikelijk voor gedeelde projectmappen.
- 06777 = rwxrwxrwx — iedereen kan alles doen. Een veiligheidsvlag; bijna nooit het juiste antwoord.
Hoe je een chmod-waarde uitwerkt
In plaats van octale getallen uit het hoofd te leren, beschrijf je de gewenste toegang en laat je de rekenmachine het getal en de rwx-string produceren.
- 01
Open de chmod calculator
Ga naar de chmod calculator van Handytool. Het werkt volledig in je browser.
- 02
Vink de vakjes aan
Vink lezen, schrijven of uitvoeren aan voor eigenaar, groep en anderen op basis van wie wat moet kunnen doen.
- 03
Lees het resultaat
De tool toont de numerieke modus (zoals 755) en de symbolische string (zoals rwxr-xr-x) naast elkaar, zodat je kunt kopiëren welke je commando nodig heeft.
- 04
Kopieer het commando
Pak het klaargemaakte chmod-commando en plak het in je terminal om de machtigingen toe te passen.
Eén voorbehoud: uitvoeren betekent verschillende dingen
Op een bestand betekent de execute-bit "dit kan als een programma worden uitgevoerd." Op een map betekent uitvoeren iets anders: "je mag deze map binnengaan en toegang krijgen tot wat erin zit." Daarom krijgen mappen normaal gesproken 755 in plaats van 644 — zonder de execute-bit kun je de naam van een map opnoemen maar niet openen of de bestanden erin bereiken.
Dit is de reden waarom een pas geüploade map vol leesbare bestanden nog steeds "machtiging geweigerd" kan gooien. De bestanden kunnen 644 zijn en perfect leesbaar, maar als de map zelf de execute-bit voor de groep of anderen niet heeft, kan niemand erin gaan. Stel mappen in op 755 en hun inhoud op 644 en de meeste van deze puzzels verdwijnen.
chmod Veelgestelde vragen
Wat betekent chmod 755?
Het geeft de eigenaar volledige lees-, schrijf- en uitvoermachtiging (7), en geeft de groep en iedereen anders alleen lees- en uitvoeringsmachtiging (5 en 5). Het is de standaardmodus voor mappen, scripts en programma's die anderen kunnen gebruiken maar niet wijzigen.
Wat is het verschil tussen 755 en 644?
755 bevat de execute-bit, dus het bestand kan worden uitgevoerd en mappen kunnen worden betreden. 644 heeft geen execute-bit — het is lezen en schrijven voor de eigenaar, alleen-lezen voor iedereen anders, wat juist is voor normale gegevensbestanden.
Is chmod 777 veilig?
Zelden. Het laat elke gebruiker en proces het bestand lezen, wijzigen en vervangen, wat een beveiligingsrisico vormt op elk gedeeld systeem. Gebruik de minst brede modus die het probleem oplost, meestal 755 of 644.
Hoe lees je een modus zoals rwxr-xr-x?
Lees het in drie groepen van drie: rwx (eigenaar) r-x (groep) r-x (anderen). Een letter betekent dat de machtiging wordt verleend, een streepje betekent dat dit niet het geval is. rwxr-xr-x is de symbolische vorm van 755.