A Unix/Linux shell command to change file permissions.
<man>chmod</man>
Chmod Chmod ugoa =+- rwx filename WHO U= user G= group O= owner A= all Or Chmod xxx filename R = 4 Read W = 2 Write X = 1 Execute Ie Chmod 744 file.ksh User can Read 4 Write +2 Execute +1 =7 Group can Read 4 Everyone can Read 4
Wenn 4 Zahlen benutzt werden können noch weitere Sonderrecht vergeben werden.
Auch hier wird 1+2+4 addiert. 1 für "Rest der Welt", 2 für "Gruppe" und 4 für "Besitzer".
Substitute UserID Bit (SUID) "Wert": 4 - Besitzer
Dieses Recht gilt ausschließlich für ausführbare Dateien. Hat eine ausführbare Datei dieses Recht gesetzt, so erscheint in der Darstellung durch das ls -l Kommando statt dem x beim Eigentümerrecht ein s. Jeder User, der dieses Programm ausführt, tut dies unter der effektiven UserID des Users, dem die Datei geh?rt.
$ chmod 4755 test $ ls -lha test -rwsr-xr-x 1 took took 0 Mär 15 23:20 test*
Substitute GroupID Bit (SGID) "Wert": 2 - Gruppe
Dieses Recht gilt einerseits für ausführbare Dateien und andererseits für Verzeichnisse. Hat ein ausführbares Programm dieses Recht gesetzt, so gilt der gleiche Mechanismus, wie beim Substitute UserID Bit, nur diesmal eben die Gruppenmitgliedschaft betreffend. Ein User, der dieses Programm ausführt, tut dies als Gruppenmitglied der Gruppe, der das Programm gehört, statt seiner eigentlichen Gruppenkennung. Er hat also die Rechte eines Gruppenmitglieds dieser Gruppe.
$ ls -lha test -rwxr-sr-x 1 took took 0 Mär 15 23:20 test*
Hat ein Verzeichnis dieses Recht gesetzt, dann liegt der Fall etwas anders. Legt ein User, der Schreibrecht auf ein Verzeichnis hat, in diesem Verzeichnis eine Datei an, so erh?lt diese Datei normalerweise die Gruppenmitgliedschaft der prim?ren Gruppe des Users, der sie eben angelegt hat. Das f?hrt schnell zum Chaos, wenn z.B. mehrere User zusammen an einem Projekt arbeiten. Alle diese User sind Gruppenmitglieder einer bestimmten Gruppe, aber sie haben diese...?!?! hundfred: pls continue
T "Wert": 1 -rest der Welt
da steht dann t bzw T.. wat dat bedeutet... wissema noch nich
$ chmod 1755 test $ ls -lha test -rwxr-xr-t 1 took took 0 Mär 15 23:20 test* $ chmod 1754 test $ ls -lha test -rwxr-xr-T 1 took took 0 Mär 15 23:20 test*
Absolute modes are octal numbers specifying the complete list of attributes for the files; you specify attributes by OR'ing together these bits.
01000000 temporary file 02000000 compressed file 04000000 sparse file 4000 Hidden file (setuid bit) 2000 System file (setgid bit) 1000 Archive bit (sticky bit) 0400 Individual read 0200 Individual write 0100 Individual execute (or list directory) 0040 Group read 0020 Group write 0010 Group execute 0004 Other read 0002 Other write 0001 Other execute
See also: POSIX_ACL