1. Archivierung. 1.1 Archivierung mit zip.

Ähnliche Dokumente
Archivieren und Komprimieren, SSH

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, Globs

Archivieren und Komprimieren, Globs

Grundbefehle. LPI Zertifizierung. Auf dem Weg: Certified Linux

Material zum Grundlagenpraktikum ITS. eine kleine Linux-Befehlsreferenz. Stand: Oktober 2007 zusammengestellt von: Cornelia Menzel Version 1.

Linux-Befehlsreferenz

Arbeiten mit der Shell Teil 1

Dateisystem 1, Suchen & Finden

Grafische Oberfläche, Shell Teil 4 Linux-Kurs der Unix-AG

Arbeiten mit der Shell Teil 1

SCI Linux Einführung

Arbeiten mit der Shell Teil 1

FTP. Backup. noch ein paar Skripte Kylix-Installation. freischalten automatischer Upload Windows-Client. Archivieren Mirror-Verfahren Clonen

LINUX Gesamtmitschrift

Basiskonzepte des Rechnerbetriebs

Archivieren und Komprimieren

Dateisystem 2, Suchen & Finden

Backups. SelfLinux Autor: Johnny Graber Formatierung: Alexander Fischer

Computer & GNU/Linux Einführung Teil 3

Dateisystem 2, Suchen & Finden, Manpages

Dateisystem 2, RegEx, Manpages

2 2. Tag. 2.1 Das Dateisystem. das Dateisystem organisiert die Speicherung von Daten. viele Betriebssysteme haben verschiedene Dateisysteme

FH Frankfurt am Main WS 2007/2008. Unix-Praktikum

Arbeiten mit der Shell Teil 1

Arbeiten mit der Shell in Linux

ATB Ausbildung Technische Berufe Ausbildungszentrum Klybeck

Arbeiten mit der Shell Teil 4

Linux Kurs Vorlesung 2 - Terminal

SelfLinux Dateien unter Linux

SelfLinux Dateien unter Linux

Kommandos im Unix-Grundkurs Digicomp-UXE. Inhalt

Gebrauchsanleitung zu "iexpress"

Automatisiertes Backup mit Hilfe einer Batchdatei unter Windows. angefertigt von Dominik Erdmann

Einführung in die Angewandte Bioinformatik

2.Übung Systemsoftware (SYS) Hochschule Mannheim

Gibt Daten im erweiterten Format aus. Dies beinhaltet die Angabe von Zugriffsrechten, Besitzer, Länge, Zeitpunkt der letzten Änderung und mehr.

Benutzung der Manpage, Shell Teil 3

Literatur. Einführung in Unix. Login. Passwort. Mag. Thomas Griesmayer. Benutzererkennung und Passwort Case-Sensitiv Prompt

Dateien und Verzeichnisse

1. Allgemeines. dd (disk dump) Linux Programm zur Sicherung von Festplatten und Partitionen

Grundlagen der Programmierung

OpenVMS/VAX Notizen. Thomas Strathmann. 19. April 2010

ISiBackup. Daniel Lutz

Einführung in die Kommandozeile

Arbeiten in der Unix-Kommandozeile. PeP et al. Toolbox Workshop

I Installation und ErsteSchritte 7. 1 Allgemeines 8

Literatur zu Linux. im Internet Teil der Installation: man, info O'Reilly Verlag: Addison-Wesley: noch viele weitere Bücher und Online-Dokumente

Dateisysteme und Links

Johannes mirroring-seite

Anweisungen zur Aktualisierung der IOP Firmware und Software

Debian GNU/Linux. Unix Grundlagen und Betrieb. Christian T. Steigies

Zip Manager für Nokia Communicator

Acronis TrueImage (Version 7.0) Benutzerführung. genutzte Quelle: / Hilfedatei zum Programm Acronis TrueImage Version 7.

Arbeiten mit Linux und an der Kommandozeile

Einführung in das wissenschaftliche Rechnen

KOMPRIMIERUNGS & VERSCHLÜSSELUNGS- TOOL

Unix/Linux Grundlagen für Einsteiger

Simple Filesystem Helper

Die Shell. [prompt]> <command> <flags> <args>

Verwaltung von Logfiles mit logrotate

Ihr Heimatverzeichnis. Die Ausgangsverzeichnisse für die neu zu erstellenden Verzeichnisse sind folgender Tabelle zu entnehmen:

3. Update des edirectory Neustart des edirectory und Kontrolle edirectory neu starten Versionskontrolle 4

DiskSpaceMapper. Wo verstecken sich die vielen MBytes?

Subversion. Einstieg in die. Versionskontrolle

GFAhnen Datensicherung und Datenaustausch

Backup und Datensicherung von Plone-Systemen. Vortragender: Christian Becker

Linux Grundlagen. Wolfgang Scheicher 20. Mai Allgemeines Bootvorgang Verzeichnisstruktur... 2

Zugriff zum Datenaustausch per scponly

PPS - Linux-basierter Zugangsrouter und Firewall USB und lrp-pakete

ELTIME Backup. ELTIME für Windows V6.3. Stand Telefonzentrale: (02431) 5087 ELTIME-Hotline: (02431) 4081 FAX: (02431) 3864

Diskettenzugriff unter Linux

# echo echo "Step 1 Inaktives RAM ermitteln"

Kurze Einweisung in die Shell

Hinweise zur Datensicherung für die - Prüfmittelverwaltung - Inhalt

Praktikum RO1 Einführung Linux / Ubuntu / Bash

Backup-Programm für Festplatten unter SpartaDOS. Deutsche Anleitung

Personal Backup 2013, Dr. J. Rathlev, IEAP, Uni-Kiel Internet: Kurze Einführung

Arbeiten mit der Shell Teil 2

Verzeichnisse unter Linux

Server-Seite. Inhaltsverzeichnis. BackupPC

Ein- und Ausgabeumlenkung

KURZANLEITUNG DUPLICITY MIT CLOUD OBJECT STORAGE

SHELL WE BEGIN? EINE EINFÜHRUNG IN DIE SHELL. Max Rosin - ANKÜNDIGUNGEN

Wichtige Kommandozeilenbefehle & Handhabung des GUI Tivoli Storage Manager

Einführung in das Programmieren unter Unix

Linux Systemadministration

L A TEX, Linux, Python

Tutorium 1 Systemadministration 2 - Linux Universität Hildesheim

Unix Grundlagen. - ii - Ambit Professional Seminar Series. Autor: Prof. J. Anton Illik Diplom-Informatiker

Windows 7 Winbuilder USB Stick

Linux I II III Res/Pro WN/TT Theorie Terminal Ein- und Ausgabe. Linux I. 1 Linux I. Theorie Terminal Ein- und Ausgabe. Ressourcen-Vorkurs

H. Tornsdorf М. Tornsdorf. Das große Buch zu

Symbole, die in diesem Handbuch verwendet werden

Windows 7 Service Pack 1 ALL IN ONE DVD mit 32 und 64 Bit Versionen erstellen

storebackup, das unkonventionelle Backup Tool

Steuersoft ESt-Plus NX Datensicherung

Transkript:

Linux - Archivierung. - 1 / 8-1. Archivierung. Hauptsächlich werden folgende Archivierungsarten angewendet. Bei den ersten Arten werden keine Rechte archiviert und dienen bevorzugt normalen Anwendern zur Erstellung komprimierter Dateien: Archivierung mit zip. Archivierung mit GNU-Zip. Archivierung mit bzip2. Bei den folgenden Archivierungen werden die Rechte mit archiviert und werden für Sicherungen des Systems verwendet: Archivierung mit dem Kommando tar (s. dazu auch die Manpage und info tar) Archivierung mit dem Kommando cpio (s. dazu die Manpage und info cpio) 1.1 Archivierung mit zip. Es werden keine Rechte mit archiviert! Die Kommandos zip und unzip dienen zum Packen und Entpacken. zip <Optionen> <Archivdatei> [...] -r Unterverzeichnisse mit einbeziehen. -R Unterverzeichnisse mit einbeziehen, im aktuellen Verzeichnis beginnen. -i Nur Dateien mit einem bestimmten Muster (* und? erlaubt) archivieren. -j Pfade nicht archivieren (Standard: relative Pfade archivieren). -T Archiv testen. Bei der Archivdatei wird automatisch die Dateiendung.zip hinzugefügt. Archivierung: $ cd /usr/share/doc $ zip -r ~/doku-backuppc BackupPC-* adding: BackupPC-3.2.1/ (stored 0%) adding: BackupPC-3.2.1/README.RHEL (deflated 49%) adding: BackupPC-3.2.1/LICENSE (deflated 62%) adding: BackupPC-3.2.1/README (deflated 57%) adding: BackupPC-3.2.1/ChangeLog (deflated 67%) adding: BackupPC-3.2.1/doc/ (stored 0%) adding: BackupPC-3.2.1/doc/BackupPC.pod (deflated 69%) adding: BackupPC-3.2.1/doc/BackupPC.html (deflated 73%) adding: BackupPC-3.2.1/README.fedora (deflated 42%) $ cd $ zip -Tv doku-* Archive: doku-backuppc.zip testing: BackupPC-3.2.1/ testing: BackupPC-3.2.1/README.RHEL testing: BackupPC-3.2.1/LICENSE testing: BackupPC-3.2.1/README testing: BackupPC-3.2.1/ChangeLog testing: BackupPC-3.2.1/doc/ testing: BackupPC-3.2.1/doc/BackupPC.pod testing: BackupPC-3.2.1/doc/BackupPC.html testing: BackupPC-3.2.1/README.fedora No errors detected in compressed data of doku-backuppc.zip. test of doku-backuppc.zip unzip [<Optionen>] <Archivdatei> [<Datei> [...]] [-d <Entpackverzeichnis>] -d Verzeichnis zum Entpacken des Archivs (Standard: aktuelles Verzeichnis). -l Inhalt auflisten. -T Archiv testen. Bei der Archivdatei wird automatisch die Dateiendung.zip hinzugefügt.

Linux - Archivierung. - 2 / 8 - $ unzip -t doku-backuppc Archive: doku-backuppc.zip testing: BackupPC-3.2.1/ testing: BackupPC-3.2.1/README.RHEL testing: BackupPC-3.2.1/LICENSE testing: BackupPC-3.2.1/README testing: BackupPC-3.2.1/ChangeLog testing: BackupPC-3.2.1/doc/ testing: BackupPC-3.2.1/doc/BackupPC.pod testing: BackupPC-3.2.1/doc/BackupPC.html testing: BackupPC-3.2.1/README.fedora No errors detected in compressed data of doku-backuppc.zip. $ unzip -lv doku-backuppc Archive: doku-backuppc.zip Length Method Size Cmpr Date Time CRC-32 Name -------- ------ ------- ---- ---------- ----- -------- ---- 0 Stored 0 0% 02-03-2012 13:54 00000000 BackupPC-3.2.1/ 990 Defl:N 505 49% 01-23-2012 03:33 690d0765 BackupPC-3.2.1/README.RHEL 15220 Defl:N 5776 62% 04-25-2011 05:31 869ccae7 BackupPC-3.2.1/LICENSE 5735 Defl:N 2476 57% 04-25-2011 05:31 a7e2c177 BackupPC-3.2.1/README 75390 Defl:N 25126 67% 01-23-2012 03:33 f7d9c983 BackupPC-3.2.1/ChangeLog 0 Stored 0 0% 02-03-2012 13:54 00000000 BackupPC-3.2.1/doc/ 181789 Defl:N 56039 69% 01-23-2012 03:33 2d6f3af9 BackupPC-3.2.1/doc/BackupPC.pod 234053 Defl:N 63253 73% 01-23-2012 03:33 c9fa0632 BackupPC-3.2.1/doc/BackupPC.html 614 Defl:N 357 42% 01-23-2012 03:33 424f96e4 BackupPC-3.2.1/README.fedora -------- ------- --- ------- 513791 153532 70% 9 files $ unzip doku-backuppc Archive: doku-backuppc.zip creating: BackupPC-3.2.1/ inflating: BackupPC-3.2.1/README.RHEL inflating: BackupPC-3.2.1/LICENSE inflating: BackupPC-3.2.1/README inflating: BackupPC-3.2.1/ChangeLog creating: BackupPC-3.2.1/doc/ inflating: BackupPC-3.2.1/doc/BackupPC.pod inflating: BackupPC-3.2.1/doc/BackupPC.html inflating: BackupPC-3.2.1/README.fedora $ ls -F BackupPC-* ChangeLog doc/ LICENSE README README.fedora README.RHEL $ rm -r BackupPC-* 1.2 Archivierung mit gzip. Es werden keine Rechte mit archiviert! Die Kommandos gzip und gunzip dienen zum Packen und Entpacken. Es kann immer nur eine Datei separat archiviert werden! Quelldateien werden nach dem Archivieren gelöscht! Archivdateien werden nach dem Entpacken gelöscht! gzip [ <Optionen> ] [ <Datei> [...]] -t Archiv testen. -l Listen der Eigneschaften. Bei jeder Archivdatei wird automatisch die Dateiendung.gz hinzugefügt. $ gzip -r BackupPC-*/ gzip: BackupPC-3.2.1/doc is a directory -- ignored $ tree BackupPC-*/ BackupPC-3.2.1/ ChangeLog.gz doc

Linux - Archivierung. - 3 / 8 - BackupPC.html.gz BackupPC.pod.gz LICENSE.gz README.fedora.gz README.gz README.RHEL.gz 1 directory, 7 files $ du -sh BackupPC-*/ 176K BackupPC-3.2.1/ $ gzip -rtv BackupPC-*/ BackupPC-3.2.1//README.fedora.gz: BackupPC-3.2.1//LICENSE.gz: BackupPC-3.2.1//ChangeLog.gz: BackupPC-3.2.1//README.gz: BackupPC-3.2.1//README.RHEL.gz: BackupPC-3.2.1//doc/BackupPC.html.gz: BackupPC-3.2.1//doc/BackupPC.pod.gz: $ gzip -rlv BackupPC-*/ method crc date time compressed uncompressed ratio uncompressed_name defla 424f96e4 Feb 11 19:28 389 614 41.9% BackupPC-3.2.1//README.fedora defla 869ccae7 Feb 11 19:28 5802 15220 62.0% BackupPC-3.2.1//LICENSE defla f7d9c983 Feb 11 19:28 25154 75390 66.7% BackupPC-3.2.1//ChangeLog defla a7e2c177 Feb 11 19:28 2501 5735 56.8% BackupPC-3.2.1//README defla 690d0765 Feb 11 19:28 535 990 49.0% BackupPC-3.2.1//README.RHEL defla c9fa0632 Feb 11 19:28 63285 234053 73.0% BackupPC-3.2.1//doc/BackupPC.html defla 2d6f3af9 Feb 11 19:28 56070 181789 69.2% BackupPC-3.2.1//doc/BackupPC.pod gunzip [ <Optionen> ] [ <Datei> [...]] -t Archiv testen. -l Listen der Eigneschaften. $ gunzip -r BackupPC-*/ $ tree BackupPC-*/ BackupPC-3.2.1/ ChangeLog doc BackupPC.html BackupPC.pod LICENSE README README.fedora README.RHEL 1 directory, 7 files Archivierte Dateien können mit den Kommandos zcat, zmore und zless auf der Standardausgabe (Bildschirm) dekomprimiert ausgegeben werden. 1.3 Archivierung mit bzip2. Es werden keine Rechte mit archiviert! Die Kommandos bzip2 und bunzip2 dienen zum Packen und Entpacken. Es kann immer nur eine Datei separat archiviert werden! bzip2 [ <Optionen> ] [ <Datei> [...]] -k Quelldateien nicht löschen (Standard: Quelldateien werden nach dem Archivieren gelöscht), engl. keep. -t Archiv testen. Bei jeder Archivdatei wird automatisch die Dateiendung.bz2 hinzugefügt.

Linux - Archivierung. - 4 / 8 - $ cd $ cp -r /usr/share/doc/backuppc-*. $ bzip2 BackupPC-*/* BackupPC-*/doc/* bzip2: Input file BackupPC-3.2.1/doc is a directory. $ tree BackupPC-*/ BackupPC-3.2.1/ ChangeLog.bz2 doc BackupPC.html.bz2 BackupPC.pod.bz2 LICENSE.bz2 README.bz2 README.fedora.bz2 README.RHEL.bz2 1 directory, 7 files $ du -sh BackupPC-*/ 152K BackupPC-3.2.1/ $ bzip2 -tv BackupPC-*/*.bz2 BackupPC-*/doc/*.bz2 BackupPC-3.2.1/ChangeLog.bz2: ok BackupPC-3.2.1/LICENSE.bz2: ok BackupPC-3.2.1/README.bz2: ok BackupPC-3.2.1/README.fedora.bz2: ok BackupPC-3.2.1/README.RHEL.bz2: ok BackupPC-3.2.1/doc/BackupPC.html.bz2: ok BackupPC-3.2.1/doc/BackupPC.pod.bz2: ok bunzip2 [ <Optionen> ] [ <Datei> [...]] -k Quelldateien nicht löschen (Standard: Archivdateien werden nach dem Entpacken gelöscht), engl. keep. -t Archiv testen. $ bunzip2 BackupPC-*/*.bz2 BackupPC-*/doc/*.bz2 $ tree BackupPC-*/ BackupPC-3.2.1/ ChangeLog doc BackupPC.html BackupPC.pod LICENSE README README.fedora README.RHEL 1 directory, 7 files $ du -sh BackupPC-*/ 528K BackupPC-3.2.1/ Archivierte Dateien können mit den Kommandos bzcat, bzmore und bzless auf der Standardausgabe (Bildschirm) dekomprimiert ausgegeben werden. 1.4 Archivierung mit tar. Das Kommando tar dient der Archivierung von Dateien und Ordnern. Dabei werden die Attribute wie Rechte, Eigentümer, Gruppe, Datum usw. mit archiviert (ist bei ZIP Archivierung nicht der Fall). tar [ -vcjxtdkzf ] [ --preserve ] [ --one-file-system ] [ --exclude=<muster> ] [ -X <Datei> ] <Archivdatei> [<Name(n)>] -c Archivdatei von den Name(n) der Verzeichnisse oder Dateien anlegen (create). -x Name(n) der Verzeichnisse oder Dateien aus der Archivdatei zum Entpacken (extract). -t Name(n) der Verzeichnisse oder Dateien aus der Archivdatei nur listen (test). -d Archiv verifizieren (differences).

Linux - Archivierung. - 5 / 8 - -W Lesbarkeit des Archivs prüfen, dies ist keine Verifizierung gegen vorhandene Dateien! Nur bei unkomprimierten Archiven möglich! -v Detaillierte Meldungen erzeugen (verbose). -z gzip (GNU-ZIP, ist nicht das ZIP Format) komprimiertes Archiv (beim Entpacken kann Option entfallen). -j bzip2 komprimiertes Archiv (beim Entpacken kann Option entfallen). --preserve Nur beim Entpacken: Dateirechte und Reihenfolge der Anordnung wie im Archiv erhalten. Wichtig für das Entpacken von Systemsicherungen und ist Standard beim Entpacken unter dem root Account (diese Option braucht also von root nicht angegeben werden). --one-file-system Nur beim Archivieren: Ist im Umfang der Archivierung ein Netzwerk-Dateisystem eingebunden (NFS, SMB,...), wird dieses von der Archivierung ausgeschlossen. verhindert diese Option das der Inhalt des Mountpoints mit archiviert wird. -k Beim Entpacken: Keine vorhandenen Dateien überschreiben (keep). -f Archivdatei (auch ein Device in /dev sein, wie zum Beispiel ein Bandgerät /dev/mt0) Diese Option muß immer die letzte Option vor Angabe der Archivdatei sein! --exclude Zur Angabe eines Musters für Dateien, die nicht archiviert werden sollen. -X Datei Die in dieser Datei enthaltenen Muster (ein Muster pro Zeile) werden von der Archivierung ausgenommen. Archivdatei Name der Datei, die die Sicherung enthält oder ein Device (Gerät). Namen Namen der zu de-/archivierenden Dateien/Verzeichnisse (Wichtig: denken Sie daran, daß der Platzhalter * nie für den Punkt im Namen von versteckten Dateien steht, geben Sie immer ein Verzeichnis an, wenn Sie versteckte und nicht versteckte Dateien sichern wollen). Wenn nicht angegeben, gilt ganzer Archivinhalt - bei Erstellung ist die Angabe notwendig. Die Sicherung erfolgt mit relativem Pfad (Standard), auch wenn zu sichernde Verzeichnisse und Dateien mit absolutem Pfad angegeben werden. Dies ist sinnvoll und sollte nicht über eine entsprechende Option geändert werden! Das Kommando tar wird auch zur Sicherung eines kompletten Linux Systems verwendet und muß immer über ein autarkes zweites Linuxsystem erfolgen (das zu sichernde System darf also nicht hochgefahren werden), zum Beispiel durch ein auf der RAM Disk befindliches Notfall Linux der Installations-DVD oder der Net-Install-CD. Die Dateiendung von Archiven ist wahlfrei. Es ist aber üblich bei GNU-Zip die Endung.tgz oder.tar.gz zu vergeben, bei unkomprimierten Archiven.tar und bei bzip2 komprimierten Archiven die Endung.tar.bz2. Beispiel, Sicherung des eigenen Heimatverzeichnisses durch den Benutzer selbst: Wird die Archivdatei in dem Verzeichnis angelegt, das gesichert wird, so empfiehlt sich, die Sicherungsdatei(en) von der Archivierung auszunehmen (durch Kommandosubstitution wird ein eindeutiger Dateiname für die Sicherungsdatei vergeben): $ cd $ tar --exclude='sicherung-*.tgz' -czf sicherung-`date '+%Y%m%d%H%M'`.tgz. $ ls -lh sicherung-* -rw-rw-r--. 1 kubi kubi 134M 10. Feb 18:18 sicherung-201202101818.tgz Nehmen wir an, eine Datei wurde im Dateisystem inzwischen verändert. Es läßt sich ermitteln welche: $ tar --exclude='sicherung-*.tgz' -dzf sicherung-201202101818.tgz./.libreoffice/3/user/registrymodifications.xcu: Änderungszeit ist unterschiedlich./.libreoffice/3/user/registrymodifications.xcu: Größe ist unterschiedlich Wird zum Beispiel eine Datei gelöscht, läßt sie sich aus der Sicherung wieder herstellen: $ rm.bash_history $ ls.bash_history ls: Zugriff auf.bash_history nicht möglich: Datei oder Verzeichnis nicht gefunden $ tar -xzf sicherung-201202101818.tgz./.bash_history $ ls.bash_history.bash_history Natürlich sollten Sicherungen nicht auf dem Rechner verbleiben, auf dem sie erstellt wurden! Sie sollten auf einen anderen Rechner im Netz übertragen werden, auf eine externe Festplatte, eine Wechselplatte oder ein Bandmedium übertragen werden. Man beachte auch Sicherungsstrategien wie inkrementelle oder differentielle Sicherungen und Backuppläne mit mehreren Datenträgern. RAW formatierte Datenträger (Disketten, USB-Sticks, Datenbänder usw. ohne Dateisystem) können mit dem Kommando tar seriell beschrieben und unter allen UNIX Systemen gelesen werden! Durch Verwendung einer Pipe auf das Kommando split läßt sich eine Archivdatei in mehrere mit jeweils einer maximalen Dateigröße teilen - praktisch, wenn ein Archiv nicht mehr auf den Datenträger paßt. Mit dem Kommando cat werden die Teile wieder zusammengesetzt.

Linux - Archivierung. - 6 / 8 - $ tar --exclude='sicherung-*' -czf -. split -d -b 50M - sicherung-`date '+%Y%m%d%H%M'`. tar:.: Datei hat sich beim Lesen geändert. $ ls -lh sicherung* -rw-rw-r--. 1 kubi kubi 50M 11. Feb 13:27 sicherung-201202111327.00 -rw-rw-r--. 1 kubi kubi 50M 11. Feb 13:27 sicherung-201202111327.01 -rw-rw-r--. 1 kubi kubi 39M 11. Feb 13:27 sicherung-201202111327.02 $ cat sicherung-201202111327.?? tar -tzf -./.bash_history./.bash_history $ rm.bash_history $ ls.bash_history ls: Zugriff auf.bash_history nicht möglich: Datei oder Verzeichnis nicht gefunden $ cat sicherung-201202111327.?? tar -xzf -./.bash_history $ ls.bash_history.bash_history Unter dem Betriebssystem aus Redmont lassen sich die Teile wieder mit copy /b Datei.00+Datei.01+... Gesamtdatei zusammen setzen. 1.5 Archivierung mit cpio. Archivierungen mit dem Kommando cpio werden von einigen Administratoren bevorzugt, obwohl er gegenüber Archivierungen mit tar Nachteile aufweist: Es gibt keine direkte Möglichkeit, ein angelegtes Archiv bitweise zu verifizieren (-d Option bei tar). Die Handhabung ist in der Kommandozeile weitaus umständlicher. Der Vorteil bei cpio: Im Gegensatz zu tar können beschädigte Archive mit cpio gerettet werden. Mit cpio werden die Attribute wie Rechte, Eigentümer, Gruppe, Datum usw. mit archiviert. 1.5.1 Anlegen eines Archivs (-o Option). Beim Anlegen eines Archivs mit dem Kommando cpio ist zu beachten: Bei absoluter Angabe des Pfades wird auch der absolute Pfad gesichert: find /<Pfad>[/<Datei(en)>]/ [<weitere Optionen>] cpio -o > <Archivdatei> Bei relativer Angabe wird der relative Pfad gesichert: find /<Pfad>[/<Datei(en)>]/ [<weitere Optionen>] cpio -o > <Archivdatei> Archivierung des aktuellen Verzeichnisses ohne Unterverzeichnisse mit relativem Pfad: ls [<Datei(en)>] cpio -o > <Archivdatei> Durch Verwendung einer Pipe auf das Kommando gzip können die Archive komprimiert werden (mit einer weiteren Pipe auf das Kommando split würden mehrere Archivdateien mit einer maximalen Dateigröße entstehen - praktisch, wenn ein Archiv nicht mehr auf den Datenträger paßt). Um nicht ganze Verzeichnisse, sondern nur ausgewählte Dateien usw. zu archivieren, kann mit Wildcards und Jokerzeichen bei ls und find (hier auch reguläre Ausdrücke) gearbeitet werden, als auch in der Pipe das Kommando grep (hier auch reguläre Ausdrücke) verwendet werden. Verwendet man bei find die Option -mtime, lassen sich inkrementelle Backups erstellen. Beispiel: Verzeichnis /etc mit absolutem Pfad als root archivieren. # cd # pwd /root # find /etc cpio -o > etc-sicherung`date '+%Y%m%d%H%M'`.cpio # ls -lh etc-sicherung*

Linux - Archivierung. - 7 / 8 - -rw-r--r--. 1 root root 28M 11. Feb 14:22 etc-sicherung201202111422.cpio Archive mit cpio sind nicht komprimiert, lassen sich aber in der Pipe mit dem Kommando gzip komprimieren: # find /etc cpio -o gzip > ~/etc-sicherung`date '+%Y%m%d%H%M'`.cpio.gz # ls -lh etc-sicherung* -rw-r--r--. 1 root root 28M 11. Feb 14:22 etc-sicherung201202111422.cpio -rw-r--r--. 1 root root 9,8M 11. Feb 14:25 etc-sicherung201202111425.cpio.gz Beispiel: Verzeichnis /etc mit relativem Pfad komprimiert als root archivieren. # cd / # find./etc cpio -o gzip > ~/etc-rel-sicherung`date '+%Y%m%d%H%M'`.cpio.gz 55799 blocks # cd # ls -lh etc-*sicherung* -rw-r--r--. 1 root root 9,8M 11. Feb 14:33 etc-rel-sicherung201202111432.cpio.gz -rw-r--r--. 1 root root 28M 11. Feb 14:22 etc-sicherung201202111422.cpio -rw-r--r--. 1 root root 9,8M 11. Feb 14:25 etc-sicherung201202111425.cpio.gz 1.5.2 Listen des Inhalts eines Archivs (-t Option). Mit dem Kommando grep in der Pipe vor der Bildschirmausgabe können nur bestimmte Dateien aus dem Archiv angezeigt werden, die von Interesse sind. cpio -t[v] < <Archivdatei> oder cat <Archivdatei> cpio -t[v] -v Langes Listing, wie bei ls -l Beispiel: Ausgabe Inhalte von Archiven. # cpio -tv < etc-sicherung201202111422.cpio grep motd -rw-r--r-- 1 root root 0 May 19 2011 /etc/motd # cat etc-sicherung201202111422.cpio cpio -tv grep motd -rw-r--r-- 1 root root 0 May 19 2011 /etc/motd Im Falle von GNU-Zip komprimierten Archiven kann das Kommando gunzip oder das Kommando zcat verwendet werden: # gunzip -c etc-sicherung201202111425.cpio.gz cpio -tv grep motd -rw-r--r-- 1 root root 0 May 19 2011 /etc/motd # zcat etc-sicherung201202111425.cpio.gz cpio -tv grep motd -rw-r--r-- 1 root root 0 May 19 2011 /etc/motd 1.5.3 Wiederherstellen von Archiven (-i Option). Mit relativem Pfad erzeugte Archive werden im aktuellen Verzeichnis entpackt. Standardmäßig werden keine Dateien überschrieben, die neuer oder gleich alt wie die im Archiv sind. Werden keine Datei(en) zum Kopieren aus dem Archiv angegeben, wird das ganze Archiv zurück kopiert - werden welche angegeben, dann werden nur diese zurück kopiertt (man darf nicht nur den Dateinamen angeben, sondern muß den Pfad berücksichtigen!). cat zcat <Archivdatei> cpio -i[tmdu tmdu] [<Datei(en)>] oder cpio -i[tmdu tmdu] [<Datei(en)>] < <Archivdatei> -i Kopiert aus Archiv zurück. -d Erstellt wenn nötig Unterverzeichnis(se). -u Überschreibt ohne auf Zeit-Stempel zu achten. -m Zeitattribut aus Archiv erhalten. -t Verhindert das zurück kopieren, Option für Test. Beispiel, zurück kopieren von /etc/motd: # mv /etc/motd /etc/motd.bak # cat etc-sicherung201202111422.cpio cpio -im /etc/motd

Linux - Archivierung. - 8 / 8 - # ls -l /etc/motd -rw-r--r--. 1 root root 0 19. Mai 2011 /etc/motd # rm -f /etc/motd # cpio -im /etc/motd < etc-sicherung201202111422.cpio # ls -l /etc/motd -rw-r--r--. 1 root root 0 19. Mai 2011 /etc/motd # rm -f /etc/motd # zcat etc-sicherung201202111425.cpio.gz cpio -im /etc/motd # ls -l /etc/motd -rw-r--r--. 1 root root 0 19. Mai 2011 /etc/motd # rm -f /etc/motd # cd / # zcat ~/etc-rel-sicherung201202111432.cpio.gz cpio -im etc/motd # ls -l /etc/motd -rw-r--r--. 1 root root 0 19. Mai 2011 /etc/motd # cd # rm -f /etc/motd.bak Hinweis: Sollten Sie die Datei /etc/motd nicht ehr wiederhergestellt bekommen, auch nicht aus der Sicherungsdatei motd.bak. so erstellen Sie die leere Datei mit touch /etc/motd Auch bei cpio ist es möglich, mit dem Kommando split in der Pipe die Archivdatei in mehrere Dateien mit einer maximalen Größe zu unterteilen.bei der Wiederherstellung lassen sich beim Kommando zcat wie bei cat mehrere Dateien angeben.