Kennisbank
1.000 veelgestelde vragen, 500 tutorials en uitlegvideo's. Hier vind je alleen maar oplossingen!
CHMOD begrijpen (bestandsrechten op een server)
Deze handleiding beschrijft CHMOD (een afkorting van change mode) waarmee u de toegangsrechten van een bestand of map kunt wijzigen.
FTP-rechten wijzigen
De rechten (raad deze andere Wikipedia-gids) die voor elke gebruiker/groep beschikbaar zijn, zijn als volgt:
- lezen: geeft het recht om een map te bekijken (vereist ook het uitvoeringsrecht) en een bestand te lezen
- schrijven: geeft het recht om bestanden en/of mappen te maken, te wijzigen, te hernoemen en te verwijderen.
- uitvoeren: voor een map: geeft het recht om de map te openen en de submappen te bekijken. Voor een bestand: geeft het recht om het bestand uit te voeren, bijvoorbeeld als het een programma of script is.
- set uid (?): bij een bestand met uitvoerrechten zorgt dit ervoor dat het bestand wordt uitgevoerd met de rechten van de eigenaar, als de systeemoproep execve of setuid wordt gebruikt.
- set gid (?): alle nieuwe bestanden die worden aangemaakt, behoren tot de groep van de map, en bij een bestand met uitvoerrechten zorgt dit ervoor dat het bestand wordt uitgevoerd met de rechten van de groep.
- sticky bit (?): bij een map kunnen bestanden in die map alleen door de eigenaar worden hernoemd of verwijderd, zelfs als andere gebruikers schrijfrechten hebben. Dit recht is niet echt nuttig voor bestanden.
Met de Web FTP in het beheerpaneel kunt u de rechten van bestanden wijzigen (inclusief die van /web).
De meeste FTP-programma's/clients bieden de mogelijkheid om de toegangsrechten van bestanden te wijzigen. Deze functie heet meestal "CHMOD" en is te vinden onder "Eigenschappen", "Rechten" of "Attributen" (meestal door met de rechtermuisknop op het bestand of de map te klikken die u wilt wijzigen). Er is vaak een vakje waarmee u de rechten recursief kunt toepassen op alle submappen en bestanden in de map.
Nadat u de gewenste rechten heeft aangevinkt, bevestigt u de wijzigingen. De rechten worden dan gewijzigd, tenzij u geen toestemming heeft om ze te wijzigen, of de gebruiker waarmee u bent ingelogd, geen toestemming heeft om ze te wijzigen.
Wanneer we het hebben over het wijzigen van machtigingen, gaat het meestal om het uitvoeren van een "chmod 777", "chmod 666" of iets dergelijks. Dit zijn dus drie cijfers, waarbij:
- het eerste cijfer de rechten van de eigenaar aangeeft.
- de tweede waarde staat voor de rechten van de groep
- de derde waarde staat voor de rechten van andere gebruikers.
De rechten zijn als volgt onderverdeeld:
- "4" voor het leesrecht (read)
- “2” voor schrijfrechten
- “1” voor uitvoerrechten
Vervolgens telt u deze getallen bij elkaar op. Als u bijvoorbeeld alle rechten aan de eigenaar wilt geven, maar geen rechten aan anderen, gebruikt u "chmod 700" (4 + 2 + 1 = 7). Als u alleen lees- en schrijfrechten voor iedereen wilt (4 + 2 = 6), gebruikt u "chmod 666".
Deze waarden zijn bekend bij alle goede FTP-software/clients, dus u kunt het getal rechtstreeks in uw FTP-software/client invoeren om de machtigingen te wijzigen.
Om de rechten van bestanden of mappen in PHP te wijzigen, kunt u ook de functie “chmod” gebruiken, zoals in het volgende voorbeeld:
chmod ("/a_folder/a_file", 0755)Houd er rekening mee dat de toe te passen waarde in octale notatie moet worden weergegeven, vandaar de verplichte '0' ervoor. Let op: als u de waarde in een variabele opslaat, kan dit leiden tot een probleem met het gegevenstype, wat u kunt oplossen met de functie octdec(), zoals in het volgende voorbeeld:
$mode = 0755;chmod("a_folder/a_file", octdec($mode))Link naar deze veelgestelde vragen: https://faq.infomaniak.com/111
Is deze veelgestelde vragenlijst nuttig geweest?