Chmod

A Unix/Linux shell command to change file permissions.

chmod

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