Datei |
aus Sicht des Betriebsssystems
|
|
Folge von 8-bit bytes
|
|
keine Satzstruktur
|
|
keine Beschränkung der Zeilenlänge
|
|
kein EOF Zeichen
|
|
keine Unterschiede: Text / binär
|
| |
Zugriffsrechte |
|
|
3 Klassen: user, group, others
|
|
3 Attribute: read (r), write (w), execute (x)
|
| |
Verzeichnisse |
|
r |
Verzeichnis lesen: nur Dateinamen
|
w |
Dateien im Verzeichnis erzeugen und löschen
|
x |
Suchen im Verzeichnis: Dateiattribute lesen
|
| |
|
um auf eine Datei zuzugreifen, müssen für alle Verzeichnisse
von der Wurzel bis zur Datei die Rechte vorhanden sein
|
| |
Kommandos |
|
chmod |
Zugriffsrechte setzten und verändern
|
|
chmod 777 datei
chmod 000 datei
chmod 644 datei
chmod a+rwx datei
chmod a-rwx datei
chmod a+r datei ; chmod u+x datei
|
| |
chown |
Besitzer ändern
|
|
chown root /etc/passwd
chown egon *.c
|
| |
|
Benutzerbeschreibung in /etc/passwd
|
chgrp |
Gruppe ändern
|
|
|
| |
|
Gruppenbeschreibung in /etc/group
|
Dateiarten |
|
- |
einfache Dateien, files
|
d |
Verzeichnisse, directories
|
c |
zeichenorientierte Gerätedateien, character devices
|
b |
blockorientierte Gerätedateien, block devices
|
l |
symbolische Verweise, symbolic links, soft links
|
p |
benannte Röhren, named pipes
|
s |
Steckdosen, sockets
|
| |
Inodes |
internal nodes, interne Namen
Indizes in die Inode-Tabelle
|
Dateizugriff |
2-stufig
|
|
Dateiname --> inode --> Inhalt
Dateiname --> inode --> Attribute
|
Inode-Tabelle |
eine große Tabelle für Dateibeschreibungen:
Attribute und Verweise auf Blöcke für den Dateiinhalt.
|
|
pro physikalischem Dateisystem eine Inode-Tabelle
|
| |
Attribute |
|
|
Zugriffsrechte
|
|
Zeitstempel
|
|
- letztes Lesen
- letztes Schreiben
- letztes Modifizieren der Attribute
|
| |
|
ls -l -u
ls -l -c
ls -l -i
|
| |
|
stat name
stat .
File: `.'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 803h/2051d Inode: 23584 Links: 35
Access: (0755/drwxr-xr-x) Uid:(506/uwe) Gid:(100/users)
Access: 2012-11-19 17:14:15.626662716 +0100
Modify: 2012-11-19 17:10:08.410595609 +0100
Change: 2012-11-19 17:10:08.410595609 +0100
Birth: -
|
| |
links |
Baumstruktur umständlich bei gemeinsamer
Verwendung einer Datei an mehreren Stellen im Dateisystem
|
|
links ermöglichen eine Graphstruktur
|
|
|
| |
|
hard links
symmetrisch
nicht über Filesystemgrenzen hinweg
nicht auf Verzeichnisse
|
| |
|
unübersichtlich
Auflösen von links
|
|
|
| |
|
kann von Editoren gemacht werden
|
|
kann bei Backups mit tar oder rsync passieren
|
| |
symbolic links |
soft links, symbolische Verweise
|
|
ln -s alteDatei neueDatei
|
| |
neuer Dateityp |
symbolic link
|
|
Erzeugen einer "besonderen" Datei, die einen Pfadnamen auf
die eigentliche Datei enthält.
|
|
beim Öffnen der Datei wird automatisch die eigentliche Datei
geöffnet
|
|
beim Löschen des links wird nur der link gelöscht,
keine Veränderung im Inode der eigentlichen Datei
|
|
beim Löschen der eigentlichen Datei bleibt der link
unverändert, erst beim Versuch des Öffnens wird ein Fehler gemeldet
|
| |
Beispiele |
|
| |
|
symbolic links über Filesystemgrenzen hinweg
|
|
symbolic links auch auf Verzeichnisse
|
| |