Split / tar
Aus Ubuntu-Forum Wiki
Inhaltsverzeichnis |
1 Problembeschreibung
Wer kennt das Problem nicht, dass z.B. das vmware Image zu gross geworden ist und nicht mal mehr auf eine DVD passt, oder man will eine grosse Datei auf
mehrere CD's verteilen (Datenbank etc.).
Oder, man möchte ein ganzes Verzeichnis sichern um es später mal wieder an anderer Stelle einzuspielen, mp3's, Videos, Bilder, nur der Inhalt passt
auch nicht auf eine CD oder DVD.
Nun, das Splitten (Zerschneiden der Datei in verschiedene kleine Dateien) einer grossen Datei ist nicht so schwer wie angenommen und das zusammenfügen
eigentlich ein Kinderspiel.
Etwas schwieriger wird dies mit einem ganzen Verzeichnis, dessen Grösse man beim kopieren unterschätzt hat, doch auch das werden wir einfach mittels der
Konsole lösen können.
Zunächst muss man sich jedoch vor Augen halten, dass die zu splittende Datei zerschnitten werden muss und die einzelnen Teildateien den gleichen Speicherplatz
auf dem Datenträger zusätzlich benötigen wie die eigentliche Quelldatei.
Also erst mal prüfen ob dieser Speicherplatz vorhanden ist, ggf. ein anderes Laufwerk oder eine andere Partition verwenden wo dieser zur Verfügung steht (USB Stick oder z.B. externe Festplatte).
2 Datei splitten (Zerschneiden)
Zunächst nehmen wir mal ein ISO File (600 MByte) und teilen dies in 90 MByte Dateien auf um diese evtl. auf einzelne ZIP Disketten (100 MByte Kapazität) zu verteilen.
split -b 90m Dateiname.iso Dateiname.split.
Hierbei wird nun die Datei Dateiname.iso in einzelne Dateien aufgeteilt und hinter .split. die Bezeichnungen aa ab ac etc. angehängt.
Nun haben wir 7 verschiedene Dateien mit der maximalgösse von 90 MByte und können diese nun auf die einzelnen Datenträger kopieren.
3 Dateien wieder zusammenfügen
Anschließend müssen wir, um die Ursprungsdatei wieder zu erhalten, alle einzelnen Dateien in ein Verzeichnis kopieren und nachfolgenden Befehl absetzen.
cat Dateiname.split.* > Dateiname.iso
Bitte beachte dass du den doppelten Speicherplatz auf dem Zieldatenträger benötigst.
Und schon ist die ganze Sache ohne zusätzliche Software zu kaufen erledigt.
Linux eben, einfach aber effektiev.
4 Verzeichnis sichern und splitten
Nun kopieren wir mal ein ganzes Verzeichnis mit seinen Unterordnern und Dateien. Hierzu benötigen wir noch den tar (tape acrchiver) Befehl.
tar -cvxf /media/sicherungsplatte/Peter_Musik.tgz /home/Peter/mp3/
Hierbei wird das ganze Homeverzeichnis unter /home/Peter/mp3/ in ein File Peter_Musik.tgz kopiert und anschließend mittels split in einzelne Dateien von je 100MByte aufgeteilt.
split -b 100m /home/Peter/Sicherung/Peter_mp3_split. /home/Peter/Sicherung/Peter_Musik.tgz
Beim Zurückspielen wird jedoch der gesamte Ursprungspfad an der Stelle wieder hergestellt wo man sich gerade befindet
tar -xvzf /home/Peter/Sicherung/Peter_Musik.tgz
5 Zusammenfügen unter Windows
Wenn man z.B. ein vmware Image von Linux nach Windows übertragen möchte, so kann
man auf der Windowsseite die einzelnen Dateien mittels des Befehls:
copy -b Datei_1+Datei_2+Datei_3+......
zusammenfügen, wenn die Dateinamenskonventionen der Vorgabe 8.3 entsprechen.
6 Grafische Oberflächen für split
Es geht nicht nur über die Kommandzeile einer Konsole (Terminal), sondern man kann das Splitten der Datei auch mittels eines grafischen Programms vornehmen:
Unter gnome:
[GFileSplit] http://gfilesplit.sourceforge.net/
Unter kde:
[karchiveur] http://perso.orange.fr/coquelle/karchiveur_en.shtml
Und, Übung macht den Meister. ;-)