chmod 644

December 1st, 2008 § 0 comments

chmod ist das allseits beliebte unix tool um Daterichte zu setzen. Um nur ein paar bits zu verwackeln reicht meistens ein Befehl, wie chmod g=rw . um der Gruppe Lese- und Schreibzugriff auf das aktuelle Verzeichnis zu geben.
An Syntax reicht dafür meistens chmod [ugo][+-=][rwx] DATEI, manchmal auch mit -R für rekursive Operatioen, wobei user, group, other und read, write, execute fröhlich kombiniert werden können.

Worauf ich aber eigentlich hinaus wollte ist, dass viele Leute anscheinend die oktale Notation bevorzugen. Ab und zu vergesse ich wie sich die Rechte zusammen setzen obwohl das eigentlich ganz einfach ist:
Die letzten 3 Stellen des Blocks entsprechen jeweils den Benutzer-, Gruppen-, und Mobrechten. Als Nerd stellt man sich jede Ziffer am besten als Bitmaske der Form rwx mit dem höchstwertigsten Bit voran. Damit entspricht r der dezimalen 4, w der 2 und x der 1.
Jede Kombination der drei Rechte lässt sich so eindeutig als Summe darstellen.

Lacher am Rande: Ich wollte gerade ein Beispiel einbinden und erhalte fiesen Murx:
[wm@krtek tmp]$ ls -la foo
ls: Zugriff auf foo/. nicht möglich: Keine Berechtigung
ls: Zugriff auf foo/.. nicht möglich: Keine Berechtigung
insgesamt 0
d????????? ? ? ? ? ? .
d????????? ? ? ? ? ? ..

Das Beispiel sollte jedenfalls so aussehen:
drw-r--r-- 2 wm users 40 1. Dez 12:18 foo
als Bitmaske steht hier bei der Berechtigung
110100100
oder dezimal
420400400
und als Summe von jeweils 3 Bits
644

edit:

  • In den man pages steht natürlich noch deutlich mehr!
  • html-tag-Unglück verlagert
  • Unglück entfernt

Tagged

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

What's this?

You are currently reading chmod 644 at maschinenraum.

meta