A. Willemer Wie werde ich UNIX-Guru
| | I ANWENDUNG |
Know-How für Unix/Linux-User: Einführung, Shell, Befehle, Hilfe, Arbeit mit Dateien, Editoren, Reguläre Ausdrücke, nützliche Tools, Hardware.
|
II ADMINISTRATION |
Tools, Systemstart, Benutzer verwalten, Hardware konfigurieren, Software installieren, Datensicherung, Tuning, Kernel
|
III NETZWERK |
Client/Server Systeme, TCP/IP, Routing, IPv6, Internet-Dienste, DHCP, Webserver, Firewalls
|
IV DAS X-WINDOW SYSTEM |
Die grafische Oberfläche von UNIX einrichten und nutzen
|
V PROGRAMMIERUNG VON SHELLSKRIPTEN |
Automatisieren von Tasks durch Shell-Skripte.
|
VI PERL |
Interpreter, Syntax, Variablen, Steuerung, Funktionen, UNIX-Aufrufe, GUIs mit Tk
|
VII PROGRAMMIERWERKZEUGE |
C-Compiler, Analyse-Tools, CVS, yacc, diff
|
VIII UNIX-SYSTEMAUFRUFE |
UNIX-Befehle in eigenen Programmen nutzen
|
IX LITERATUR |
Weiterführende Literatur zu UNIX und LINUX
|
| |
Trotz seines Namens kann tar nicht nur mit dem Band, sondern auch mit
Disketten, Wechselmedien und sogar Dateien als Ziel arbeiten. Der Vorteil von
tar ist seine weite Verbreitung und Verfügbarkeit. tar wurde im Laufe der
Jahre weiterentwickelt. Die Vorteile von tar sind:
tar ist auf jeder Maschine verfügbar. Es gibt sogar einige
Implementierungen auf anderen Betriebssystemen.
tar ist eine ausgetestete Software.
tar kann eine Sicherung über mehrere Medien verteilen
tar ist in vielen Implementierungen netzwerkfähig.
Die Nachteile von tar sind:
tar kann (in seiner Grundversion) keine Gerätedateien und andere
spezielle Dateien sichern, ist also nicht für die Systemsicherung geeignet.
tar ist unflexibel
bei der Rücksicherung einzelner Dateien.
Nach dem Befehl tar bestimmt der erste Buchstabe, welche Operation
ausgeführt wird. Hier muss einer der Buchstaben c, x oder t auftauchen.
Dabei bedeutet:
[Operationsoptionen von tar]C|L
Zeichen & Bedeutung
c & Erzeuge ein Archiv
x & Entpacke ein Archiv
t & Lies das Inhaltsverzeichnis eines Archivs
Bei den eigentlichen Optionen sind die folgenden von Bedeutung:
- [f sicherungsdatei] Mit f wird angegeben, dass die Sicherung in eine Datei erfolgen soll. Als Dateiname wird dann die Sicherungsdatei oder das Device angegeben, auf das gesichert werden soll.
- [v] zeigt alle gesicherten Dateien an. Daraus lässt sich leicht ein
Sicherungsprotokoll erstellen.
- [z oder Z] gibt an, dass das Archiv komprimiert wird. Dadurch passt
natürlich mehr auf das Band. Bei Maschinen mit schwacher CPU-Leistung
ist allerdings zu prüfen, ob der Aufwand für die Komprimierung das Schreiben
so weit verzögert, dass der Datenstrom abreißt. Das hat beim direkten
Schreiben auf Bänder
den Effekt, dass die Datensicherung um ein Vielfaches länger dauert.
Bandgeräte brauchen einen möglichst kontinuierlichen Dateninput. Sobald eine
Unterbrechung stattfindet, muss das Band stoppen, kurz zurückfahren, neu
positionieren, um dann wieder zu starten, wenn neue Daten eintreffen.
- [M] arbeitet mit Medienwechsel. Ist beim Sichern das Medium voll, wird der
Benutzer aufgefordert, das Medium zu wechseln und die Returntaste zu drücken. Beim
Rücksichern werden die erforderlichen Medien automatisch angefordert.
Als Beispiel soll hier das Verzeichnis /home gesichert werden.
Ohne weitere Angabe verwendet tar das Standardbandgerät:
# cd /home
# tar cv .
a ./tacoss symbolic link to /users/tacoss
a ./willemer symbolic link to /users/willemer
a ./notes/.sh_history 4 blocks
a ./notes/.profile 1 blocks
a ./notes/server symbolic link to /opt/lotus/bin/server
a ./notes/.Xpdefaults 2 blocks
a ./notes/ console.tmp 1 blocks
a ./rossow/.sh_history 1 blocks
a ./rossow/.rhosts 1 blocks
a ./arnold/.cshrc 2 blocks
a ./arnold/.exrc 1 blocks
a ./arnold/.login 1 blocks
a ./arnold/.profile 1 blocks
a ./arnold/.sh_history 5 blocks
a ./arnold/.rhosts 1 blocks
a ./arnold/bad.tif 1813 blocks
a ./arnold/a.out 41 blocks
a ./arnold/hello.cpp 1 blocks
a ./arnold/.history 1 blocks
#
Die vorangegangene Ausgabe von tar zeigt, dass diese Version von
tar relative Pfade abspeichert. Manche Versionen speichern immer
den absoluten Pfad.
Sollen die Dateien beim Restaurieren an eine andere Stelle kommen, empfielt
es sich, die Option A zu probieren. Sie entfernt bei solchen Systemen
normalerweise den führenden Schrägstrich beim Sichern und Zurücksichern.
Das Zurückholen aller Dateien ist relativ einfach. Man wechselt per cd
in das Zielverzeichnis und ruft tar mit der Option x auf.
Wer sehen möchte, was zurückgeholt wird, gibt noch zusätzlich ein v
an.
Sollen dagegen bestimmte Dateien zurückgeholt werden, ist das etwas
komplizierter. Hinter tar xv kann man die gewünschten Dateien
angeben, die man zurückholen möchte. Allerdings wünscht sich tar
den kompletten Pfad, so wie er beim Sichern angegeben wurde. Will man also
die Datei arnold/hello.cpp zurückholen, lautet der Befehl:
# tar xv ./arnold/hello.cpp
x ./arnold/hello.cpp, 64 bytes, 1 tape blocks
#
Dagegen scheitert der Versuch, als Parameter arnold/hello.cpp
anzugeben, obwohl das inhaltlich das Gleiche ist. Unter diesem Namen ist
es eben nicht gespeichert worden. Sämtliche Versuche, diese Version von
tar dazu zu bewegen, mit Wildcards zu arbeiten scheitern. Das
einzige Zugeständnis ist, dass man den Pfadnamen ./arnold
verwenden kann und alle darunter liegenden Dateien und Verzeichnisse
restauriert werden:
# tar xv ./arnold
x ./arnold/.cshrc, 814 bytes, 2 tape blocks
x ./arnold/.exrc, 347 bytes, 1 tape blocks
x ./arnold/.login, 341 bytes, 1 tape blocks
x ./arnold/.profile, 446 bytes, 1 tape blocks
x ./arnold/.sh_history, 2538 bytes, 5 tape blocks
x ./arnold/.rhosts, 7 bytes, 1 tape blocks
x ./arnold/bad.tif, 928109 bytes, 1813 tape blocks
x ./arnold/a.out, 20524 bytes, 41 tape blocks
x ./arnold/hello.cpp, 64 bytes, 1 tape blocks
x ./arnold/.history, 212 bytes, 1 tape blocks
#
Man ahnt es schon: Der nackte Parameter arnold ohne ./ scheitert. Das
besonders Ärgerliche an solchen scheiternden Versuchen ist, dass man sie erst
feststellt, wenn das ganze Band durchsucht wurde, was einige Zeit dauern kann.
Einige Versionen von tar können mehr. Das betrifft insbesondere
die GNU-Version. Hier ein Beispiel:
gaston> tar xvf /dev/fd0 "*syslog.tex"
unprog/syslog.tex
gaston>
GNU tar hat keinerlei Probleme mit Wildcards. Wer oft mit tar
arbeitet und häufiger einzelne Dateien zurückholen muss, sollte prüfen, ob
es ein GNU tar für sein System gibt.
Fazit: Gerade das Zurückholen einzelner Dateien ist nicht trivial und von der
Implementierung des tar abhängig. Hier sollte man sich vor dem Fall der Fälle
aus den Manpages und dem Systemhandbuch informieren und am besten den Vorgang
einmal ausprobieren.
Die tar -Implementation von SCO und SINIX verwendet eine
Steuerungsdatei namens /etc/default/tar. Dort sind die verschiedenen
Diskettenvarianten und einige Bandgeräte mit Kapazität und Device
durchnummeriert aufgezählt. Die entsprechende Zahl wird dann im
tar -Aufruf verwendet. Der Vorteil dieses Verfahrens ist, dass
tar die Größe seiner Bänder kennt.
Nehmen wir als Beispiel an, es soll das Verzeichnis /usr/bin mit
allen
Unterverzeichnissen gesichert und wieder zurückgeladen werden. Zunächst wird
mit dem Befehl cd / in das Rootverzeichnis gewechselt. Dann wird
der jeweils passende Befehl aus Tabelle verwendet.
[Variationen im tar]L|L|L
& Sichern & Laden
Linux & tar cf /dev/tape /usr/bin & tar xf /dev/tape
SCO & tar c8 /usr/bin & tar x8
Nicht immer dokumentiert, aber meist implementiert ist, dass tar in
der Lage ist, Dateien über das Netzwerk zu sichern. Dabei wird tar
als Bandlaufwerk das Device einer anderen Maschine als Ziel der Datensicherung
angegeben. Dabei wird der Hostname, gefolgt von einem Doppelpunkt und dem
dortigen Device, als Ziel verwendet. Diese Namensgebung für Netzobjekte folgt
der des Befehls rcp (remote copy; siehe S. rcp). Die
Nomenklatur kommt nicht von ungefähr, da beide über eine Pipe über den
rshd (siehe S. rshd) implementiert sind.
tar cf idefix:/dev/tape /usr/bin
Das lokale Verzeichnis /usr/bin wird auf das Bandlaufwerk der Maschine idefix
gesichert. Da die Sicherung über den rshd erfolgt, muss natürlich
auch die Berechtigungskonfiguration in der Datei .rhosts stimmen.
| |
Ihre Meinung? |
|
|
|
|
|
Shopping |
|
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz Info
|
|
|
|
|
|
|