Linux-Grundlagen

Grundlagen und Wissenswertes zu Linux (ehemals Unix).

Dot-Dateien

Der Name einer Dot-Datei beginnt mit einem Punkt '.', daher diese Bezeichnung. Unter Unix/Linux entsprechen Dot-Dateien den versteckten Dateien unter Windows und bilden in der Regel im Home-Verzeichnis das Profil eines Benutzers.

C-Shell

Die C-Shell (tcsh) kennt folgende Dot-Dateien, die zu verschiedenen Zeitpunkten abgearbeitet werden.

beim Einloggen: jede weitere Shell: beim Ausloggen:
  • /etc/csh.cshrc
  • /etc/csh.login
  • ~/.cshrc
  • ~/.login
  • /etc/csh.cshrc
  • ~/.cshrc
  • /etc/csh/logout
  • ~/.logout

Bourne-Shell

Die Bourne (again) Shell (bash) verwendet folgende Dot-Dateien.

beim Einloggen: jede weitere Shell: beim Ausloggen:
  • /etc/profile
  • ~/.bash_profile
  • ~/.bash_login
  • ~/.profile
  • /etc/bash.bashrc
  • ~/.bashrc
  • /etc/bash.bash_logout
  • ~/.bash_logout

Anmerkung: Damit eine bashrc-Datei auch beim Einloggen verarbeitet wird, muss diese explizit von einer profile-Datei eingebunden werden.

Dateirechte

Mögliche Rechte

Die Dateirechte (File Permissions) legen fest, wer was mit einer Datei machen kann. Die drei grundlegenden Rechte sind:

r  read
w  write
x  execute

Die r, w und x Rechte können unabhängig voneinander für

u  user/owner
g  group
o  others

vergeben werden.

Rechte anzeigen

Mit dem ls -l Kommando werden Dateien mit ihren Rechten angezeigt, z.B:

-rw-r--r--   1 proske   student      397 Feb 16 12:25 datei
-rw-r--r--   1 proske   student     1423 Feb 20 11:25 nocheine
-rwxr-xr--   1 proske   student     1275 Feb 16 12:25 skript
drwxr-xr-x   3 proske   student      512 Feb 20 11:18 verzeichnis

Uns interessiert nun die erste Spalte. Der allererste Buchstabe zeigt an, ob es sich um ein Directory (d) handelt oder nicht (-). Nun kommen drei dreier Gruppen, für den user, die group und für others. Die Reihenfolge der Flags ist immer gleich: rwx, ist eins dieser Flags nicht gesetzt, so steht an seiner Stelle ein Strich: -

Im obigen Beispiel kann datei von allen gelesen, aber nur vom Besitzer geschrieben werden. Das skript ist vom Besitzer proske und der Gruppe student ausführbar, nicht aber von anderen Benutzern und Gruppen.

Auch für Verzeichnisse gibt es das execute Recht, das bedeutet, dass man mit dem Verzeichnis im Pfad arbeiten kann. Beispielsweise um in das Verzeichnis wechseln oder auf eine Datei mit bekanntem Namen zuzugreifen. Ohne das read Recht ist aber eine Auflistung des Verzeichnisinhalts nicht möglich.

Rechte ändern

Zum Ändern der Zugriffsrechte gibt es den Befehl chmod. Die Syntax ist simpel:

% chmod <rechte> <datei>

Symbolische Angabe

Zum Beispiel:

% chmod +x skript

setzt das execute Recht bei der Datei skript, und zwar für Alle, den Eigentümer, die Gruppe und den Rest.

% chmod o-x skript

entzieht den others das execute Recht. Man kann auch alle möglichen Rechte auf einmal ändern, z.B.:

% chmod ug+wx,o+x skript

Oktale Angabe

Eine andere Art die Rechte anzugeben ist die oktale Form. Dabei bildet man die logische Summe aus den Bit-Werten der Rechte.

0400,0200,0100  read, write bzw. execute permission für den owner
0040,0020,0010  read, write bzw. execute permission für die group
0004,0002,0001  read, write bzw. execute permission für die others

% chmod ug+rwx,o+rx skript  →  % chmod 0775 skript

umask

Wichtig ist diese oktale Notation für die sogenannte umask - ein Wert der festlegt, welche Rechte einer neuen Datei entzogen werden sollen. So legt ein umask-Wert von 022 fest, dass niemand das write Recht haben soll, außer dem Besitzer.

0777 - 0022 = 0755  →  -rwxr-xr-x

Vorgegeben wird der umask-Wert beim Einloggen in einer der o.g. Dot-Dateien.

Man-Pages

Unter Unix/Linux kann durch das Konsolen-Kommando

% man <befehl>

zu fast jedem auf dem System verfügbaren Befehl die zugehörige Manual Page aufgerufen werden, welche den Befehl und die verfügbaren Parameter und Optionen erklärt. Diese Man-Pages sind auch online verfügbar, z.B.:

Siehe auch

Drucken/exportieren