Also hier die Befehle für die Newcomer, sonst ist es wirklich mühsam:
Für den DAU erklärt : der "tar" Befehl
Hier steht etwas für Anfänger. Die "Experten" mögen es gepflegt übergehen. Starten Sie bitte eine System-"Konsole". Sie müssen über das Menü gehen, damit Sie als Superuser auch alle Rechte haben. Es gibt ab Suse 9.1 mit KDE einen eigenen Menüpunkt dafür.
Die beiden wichtigsten tar Zeilen:
Ein tar Archiv auspacken geht so: # tar xzvf "aus welcher Datei" "wohin"
Ein tar Archiv einpacken geht so: # tar cfvz "in welche Datei" "welches Verzeichnis"
Die Reihenfolge der Optionen "x z v f" ist dabei weniger wichtig. Mit der Endung ".gz" wird ein komprimiertes (gzip) Archiv gepackt bzw. entpackt.
auspacken: tar xzvf "aus welcher Datei" "wohin entpacken"
packen: tar cfvz "in welche Datei" .tar.gz "welches Verzeichnis"
Das Auspacken geht per SSH-Putty mit dem Midnight-Comander (mc) und bei uns sogar mit der Maus und zwar super komfortabel und schnell.
Für die Bandsicherung :
Das "tar" Kommando führt das ureigenste Tape-Sicherungsprogramm unter Unix und Linux aus, darum hier die kürzeste und einfachste Zeile für eine Band-Sicherung :
# tar -cvf /dev/st0 /windows/ -b128
Mit der Option -b128 bestimmt man die 64KB Blockgröße (128 x 512 byte) z.B. bei einem DLT-7000 Laufwerk. Wenn Ihnen das alles spanisch vorkommt, tippen Sie einfach mal:
# tar --help (beachten Sie : es sind 2 mal "minus")
Lassen Sie sich von der Mächtigkeit dieses Befehls nicht erschlagen. Ganz wichtig, auf jeder Boot-Diskette ist Platz für das "tar"- Programm. Wo finden Sie das noch ? Deshalb ist "tar" und das "tar"- Format so sinnvoll und so beliebt.
Damit sichern wir den gesamten lokalen DOS und Windows Bereich der lokalen Festplatte. Hier streamt das DLT-7000 Laufwerk aber noch nicht, selbst DLT-2000er streamen noch nicht. Wir brauchen noch den Ring-Puffer.
Feinheiten, die man kennen sollte
Erwähneswert ist noch der Unterschied zwischen diesen SCSI Tape-Devices (darum auch stxx) :
- /dev/nst0 (beachten Sie das "n") und
- /dev/st0.
ImVerzeichnis /dev/nst0 "wohnt" das non-rewinding-scsi-tape 0 Devive im Gegensatz zum /dev/st0 Device.
Scheiben Sie zum Beispiel mehrere tar-Sessions hintereinander auf das st0 Device (auf ein Band)
tar -cf /dev/st0 /partition1 # ok, jetzt spult anschließend zurück.
und bei dem nun folgenden Befehl
tar -cf /dev/st0 /partition2 # wird die erste Session komplett überschreiben
Wenn Sie da nicht aufpassen, dann sind Sie sehr enttäuscht, wenn nur die letzte Session übrig ist. Bei dieser Verkettung sollten Sie also auf das /dev/nst0 Device scheiben.
Die "multivolume" Option
Sie können mit "# du -sh /" herausfinden, wie viel Daten Sie auf das Band oder die Bänder schreiben müssten, um alles zu speichern.
Wenn dann die 20Giga oder 35Giga nicht ausreichen, muß das Programm gesagt bekommnen, daß es ein weiteres Band oder auch mehrere anfordern soll.
Die Datenkompression innerhalb des "tar" geht hier gar nicht und die Hardware Kompression des DLT Laufwerkes sollten Sie unbedingt vorher abschalten. So vermeiden Sie die meisten (Stop and Go) Probleme.
Die man-page zu tar (das Handbuch) :
Unter Unix gibt es immer die elektronische Hilfe, das Manual ( oder die manual pages) auf der Platte. Das ist am einfachsten und gehört quasi zu jedem Programm immer in der aktuellen Version dazu. So macht man sich das Leben leichter.
Die üppigen Optionen des "tar" Programmes
"tar" schreibt mehrere Dateien in ein Archiv auf Band oder Festplatte und kann davon einzelne Dateien oder alles wieder aus diesem Archiv herausholen.
Verwendung:
tar [OPTION(en)]... [Datei (was)]... wohin
(irgendwie war das bei uns anders : tar opt. wohin(tape) dann was)
Beispiele:
- tar -cf archiv.tar foo bar # archiv.tar mit den Dateien foo und bar erzeugen.
- tar -tvf archiv.tar # Inhalt von archiv.tar ausführlich anzeigen.
- tar -xf archiv.tar # Alle Dateien aus archiv.tar extrahieren
Wenn eine lange Option ein Argument erfordert, ist es für die entsprechende kurze Option auch erforderlich. Das gleich gilt für optionale Argumente.
Aktionen:
- -t, --list Inhalt eines Archivs anzeigen
- -x, --extract, --get Dateien aus Archiv holen
- -c, --create neues Archiv erzeugen
- -d, --diff, --compare Dateien im Archiv und im Dateisystem vergleichen
- -r, --append Dateien an das Archiv anhängen
- -u, --update nur Dateien anhängen, die jünger sind als ihre Archiv-Version
- -A, --catenate »tar«-Dateien an ein Archiv anhängen
- --concatenate wie '-A'
- --delete aus Archiv löschen (nicht auf Magnetbändern!)
Feineinstellungen:
- -W, --verify Archiv nach dem Schreiben prüfen
- --remove-files Dateien nach dem Hinzufügen zum Archiv löschen
- -k, --keep-old-files vorhandene Dateien nicht überschreiben
- --overwrite vorhandene Dateien überschreiben
- -U, --unlink-first zu überschreibende Dateien vor dem Auspacken löschen
- --recursive-unlink Verzeichnisse vor dem Entpacken löschen
- -S, --sparse löchrige Dateien (`sparse files') effizient behandeln
- -O, --to-stdout Dateien zur Standard-Ausgabe entpacken
- -G, --incremental inkrementelle Sicherung im alten GNU-Format
- -g, --listed-incremental=DATEI inkrementelle Sicherung im neuen GNU-Format
- --ignore-failed-read Kein Abbruch bei unlesbaren Dateien
Datei-Eigenschaften:
- --owner=NAME Eigentümer für hinzugefügte Dateien auf NAME setzen
- --group=NAME Gruppe für hinzugefügte Dateien auf NAME setzen
- --mode=RECHTE Zugriffsrechte für hinzugefügte Dateien auf RECHTE setzen
- --atime-preserve Zugriffszeit beim Auspacken erhalten
- -m, --modification-time Änderungszeit beim Auspacken erhalten
- --same-owner Eigentümer beim Auspacken erhalten
- --no-same-owner Eigentümer beim Auspacken auf Ausführenden setzen
- --numeric-owner Zahlen für Benutzer bzw. Gruppen benutzen
- -p, --same-permissions Zugriffsrechte beim Auspacken erhalten
- --no-same-permissions Keine Zugriffsrechte erhalten
- --preserve-permissions wie '-p'
- -s, --same-order zu entpackende Dateinamen wie im Archiv sortieren
- --preserve-order wie '-s'
- --preserve wie '-p' und '-s' zusammen
Geräteauswahl und -einstellung:
- -f, --file=ARCHIV Gerät oder Datei ARCHIV benutzen
- --force-local Archiv-Datei ist lokal, auch wenn der Name einen Doppelpunkt enthält
- --rsh-command=BEFEHL statt «rsh» den BEFEHL benutzen
- -[0-7][lmh] Laufwerk und Schreibdichte angeben
- -M, --multi-volume mehrteiliges Archiv anlegen/listen/herausholen
- -L, --tape-length=ZAHL Medium wechseln, wenn ZAHL KBytes geschrieben sind
- -F, --info-script=DATEI am Ende jedes Mediums das Skript DATEI ausführen (impliziert '-M')
- --new-volume-script=DATEI wie '-F DATEI'
- --volno-file=DATEI Teil-Nummer in DATEI benutzen/aktualisieren
Blockung des Gerätes:
- -b, --block-size=BLÖCKE BLÖCKE à 512 Bytes pro Record
- --record-size=GRÖSSE GRÖSSE Bytes pro Record, Vielfaches von 512
- -i, --ignore-zeros Blöcke mit Nullen im Archiv ignorieren (heißt EOF)
- -B, --read-full-blocks Blockung beim Lesen ändern (für 4.2BSD "Pipes")
Auswahl des Archiv-Formats:
- -V, --label=NAME Archiv NAME erzeugen
- MUSTER Beim Anzeigen/Herausholen ist MUSTER ein regulärer Ausdruck
- -o, --old-archive, --portability Archiv im »V7«-Format schreiben
- --posix POSIX-konformes Archiv schreiben
- -j, --bzip2, --bunzip2 Archiv mit »bzip2« (de)komprimieren
- -z, --gzip, --ungzip Archiv mit »gzip« (de)komprimieren
- -Z, --compress, --uncompress Archiv mit »compress« (de)komprimieren
- --use-compress-program=PROG Archiv durch PROG filtern (muss '-d' akzeptieren)
Auswahl der lokalen Dateien:
- -C, --directory=VERZEICHNIS zu VERZEICHNIS wechseln
- -T, --files-from=DATEI Namen der zu bearbeitenden Dateien aus DATEI lesen
- --null '-T' liest Null-terminierte Namen, verbiete '-C'
- --exclude=MUSTER Dateien auslassen, auf die MUSTER passt
- -X, --exclude-from=DATEI Dateien auslassen, auf die in DATEI angegebene Muster passen
- --no-anchored Patternmatching nach / ausschließen
- --ignore-case Ignoriere Groß-/Kleinschreibung bei ausgelassenen Dateien
- --no-ignore-case Beachte Groß-/Kleinschreibung bei ausgelassenen Dateien (Default)
- --wildcards Muster für ausgelassene Dateien benutzt Wildcards (Default)
- --no-wildcards Muster für ausgelassene Dateien enthält keine Wildcards
- --wildcards-match-slash Wildcards in Mustern für ausgelassene Dateien passen auf '/' (Default)
- --no-wildcards-match-slash Wildcards in Mustern für ausgelassene Dateien passen nicht auf '/'
- -P, --absolute-names führende `/'-Zeichen in den Dateinamen erhalten
- -h, --dereference Dateien statt symbolischer Links sichern
- --no-recurse keine Verzeichnisse sichern
- -l, --one-file-system beim Erzeugen Dateisystem nicht wechseln
- -K, --starting-file=NAME mit NAME im Archiv beginnen
- -N, --newer=DATUM nur Dateien jünger als DATUM sichern
- --newer-mtime=DATUM Datum und Zeit nur vergleichen, wenn sich der Datei-Inhalt geändert hat
- --after-date=DATUM wie '-N'
- --backup[=CONTROL] Sicherheitskopie vor dem Löschen, wählt Versionskontrolle
- --suffix=SUFFIX Sicherheitskopie vor dem Löschen, Namenserweiterung SUFFIX
Informationen:
- --help Hilfe anzeigen und «tar» beenden
- --version Versionsnummer anzeigen und «tar» benden
- -v, --verbose zu bearbeitende Dateien ausführlich listen
- --checkpoint Verzeichnisnamen beim Lesen des Archivs zeigen
- --totals geschriebene Bytes beim Schreiben des Archivs zeigen
- -R, --block-number Blocknummer innerhalb des Archivs mit jeder Meldung zeigen
- -w, --interactive Bestätigung für jede Aktion verlangen
- --confirmation wie '-w'
Die Namenserweiterung für Sicherheitskopien ist `~', wenn nicht mit --suffix oder der Umgebungsvariablen SIMPLE_BACKUP_SUFFIX etwas anderes eingestellt ist. Die Versionskontrolle kann mit --backup oder der Umgebungsvariablen VERSION_CONTROL gesetzt werden.
Mögliche Werte sind:
- t, numbered nummerierte Sicherheitskopien
- nil, existing nummerierte Sicherheitskopien, wenn schon nummerierte vorhanden sind, sonst einfache
- never, simple immer einfache Sicherheitskopien
Es gibt noch mehr Optionen, nur brauchen wir die nicht.