Alexander (HH): imagick und die Rechte...

Beitrag lesen

Moin Moin!

Im ftp-Client sehe ich auch, dass der thumbs-Ordner erstellt wurde, das er dem php-Benutzer gehört und chmod 777 hat.

Nur mal, weil mich das immer schon nervt. "chmod" (Change Mode) ist der Name des Programmes, mit dessen Hilfe der Rechte-Modus der Dateien und der Verzeichnisse geändert werden kann. Wenn die Datei also etwas hat, dann den Rechtestatus 777, (file rights mode).

"File mode", nicht "file rights mode". Und darin steckt noch viel mehr als nur Permissions: Sticky, SetUID, SetGID, Typ (Datei, Verzeichnis, Symlink, Char Device, Block Device, FIFO, Socket). Siehe z.B. Linux stat(2):

The following flags are defined for the st_mode field:

S_IFMT      0170000   bit mask for the file type bit fields
  S_IFSOCK    0140000   socket
  S_IFLNK     0120000   symbolic link
  S_IFREG     0100000   regular file
  S_IFBLK     0060000   block device
  S_IFDIR     0040000   directory
  S_IFCHR     0020000   character device
  S_IFIFO     0010000   FIFO
  S_ISUID     0004000   set UID bit
  S_ISGID     0002000   set-group-ID bit (see below)
  S_ISVTX     0001000   sticky bit (see below)
  S_IRWXU     0000700   mask for file owner permissions
  S_IRUSR     0000400   owner has read permission
  S_IWUSR     0000200   owner has write permission
  S_IXUSR     0000100   owner has execute permission
  S_IRWXG     0000070   mask for group permissions
  S_IRGRP     0000040   group has read permission
  S_IWGRP     0000020   group has write permission
  S_IXGRP     0000010   group has execute permission
  S_IRWXO     0000007   mask for permissions for others (not in group)
  S_IROTH     0000004   others have read permission
  S_IWOTH     0000002   others have write permission
  S_IXOTH     0000001   others have execute permission

The set-group-ID bit (S_ISGID) has several special uses. For a directory it indicates that BSD semantics is to be used for that directory: files created there inherit their group ID from the directory, not from the effective group ID of the creating process, and directories created there will also get the S_ISGID bit set. For a file that does not have the group execution bit (S_IXGRP) set, the set-group-ID bit indicates mandatory file/record locking. The sticky bit (S_ISVTX) on a directory means that a file in that directory can be renamed or deleted only by the owner of the file, by the owner of the directory, and by a privileged process.

Der chmod-Syscall und das gleichnamige Programm können davon die letzten vier Stellen in der Oktal-Darstellung, sprich die 12 niederwertigsten Bits, ändern. Die restlichen vier Bits sind für einen einmal angelegten Dateisystem-Eintrag konstant.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".