Fw: tar macht bei 2GB nicht weiter

Hi Liste, wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende. Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home warum? mit freundlichen Gruessen, Torben Belz -------------------------------------------------------------------- isb GmbH http://www.isb.net/ fon: +49 421 20259-0 Faulenstr. 2-12 DPN Verbundparter Bremen fax: +49 421 20259-69 D-28195 Bremen Deutsches Provider Network belz@isb.net PGP Publickey: http://www.isb.net/belz.asc -------------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

On Wed, 29 Dec 1999, Torben Belz wrote:
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Weil bei 32bit Linux 2GB das Limit fuer die Groesse einer datei ist. -- Michael Hasenstein http://www.suse.de/~mha/ Private Pilot (ASEL) since 1998 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

On 29-Dec-99 Torben Belz wrote:
Hi Liste,
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home
warum?
mit freundlichen Gruessen, Torben Belz
Hi Torben, Der Fehler liegt an der maximalen Dateigrenze des ext2-Dateisystems. Da ist nun mal bei 2 Gig Schluss. MfG Florian Rauh ------------------------------------------------------ May the source be with you! ------------------------------------------------------ --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home Der Fehler liegt an der maximalen Dateigrenze des ext2-Dateisystems. Da ist nun mal bei 2 Gig Schluss.
...und selbst auf einem FS, daß größere Files unterstützt,muß das nicht funktionieren. Neben dem FS muß auch das Tools (hier tar) large-file-aware sein. UnixWare7 kann z.B. Files über 2GB verwalten, das UW-tar kann aber nur bis 2GB. Olli --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

On 29-Dec-99 Oliver Antwerpen wrote:
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home Der Fehler liegt an der maximalen Dateigrenze des ext2-Dateisystems. Da ist nun mal bei 2 Gig Schluss.
...und selbst auf einem FS, daß größere Files unterstützt,muß das nicht funktionieren. Neben dem FS muß auch das Tools (hier tar) large-file-aware sein. UnixWare7 kann z.B. Files über 2GB verwalten, das UW-tar kann aber nur bis 2GB.
Also der GNU tar von Linux schreibt hier problemlos DAT-Bänder mit 8GB - und liest sie sogar wieder :-). Nur halt nicht in ein file. -- Erhard Schwenk <eschwenk@fto.de> - http://www.fto.de **** Jetzt neu: http://www.akkordeonjugend.de **** --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

On Mit, 29 Dez 1999, you wrote:
...und selbst auf einem FS, daß größere Files unterstützt,muß das nicht funktionieren. Neben dem FS muß auch das Tools (hier tar) large-file-aware sein. UnixWare7 kann z.B. Files über 2GB verwalten, das UW-tar kann aber nur bis 2GB.
Also der GNU tar von Linux schreibt hier problemlos DAT-Bänder mit 8GB - und liest sie sogar wieder :-). Nur halt nicht in ein file. Ist ja auch klar, Du nimmst ja in diesem Falle auch nicht den Umweg über das Dateisystem sondern schreibst raw auf das Device. Das ist ungefähr so wie wenn Du mit dd eine Diskette kopierst. Ich glaube wenn Du die Daten dierekt auf ein HD device schreibst dann kannst Du die Archive auch größer als 2GB machen.
Cu, Sven --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

On 29-Dec-99 Oliver Antwerpen wrote:
...und selbst auf einem FS, daß größere Files unterstützt,muß das nicht funktionieren. Neben dem FS muß auch das Tools (hier tar) large-file-aware sein. UnixWare7 kann z.B. Files über 2GB verwalten, das UW-tar kann aber nur bis 2GB.
Sehr richtig, ich sehe aber noch weitere Problempunkte: - Die Definition der Parameter von lseek() bzw. fseek() in der libc sieht nur 32-Bit-Dateizeiger vor. Da die Parameter signed sind, gehen so max. 2 GB, wenn Byteweise adressiert werden soll (was viele Programme wohl voraussetzen dürften). Man müßte also das Filesystem erweitern, den Typ dieser Parameter (size_t?) aufbohren (--> libc neu übersetzen) und die Applikation anpassen (die muß dann auch neu übersetzt werden). Natürlich gibt es noch ein paar Funktionen mehr. Alternativ könnte man die Funktionen für files bis 2 GB beibehalten und einen neuen Satz an I/O-Funktionen mit größeren Parametern definieren (so ne Art llseek()), die dann speziell zum Zugriff auf große files dienen. Da stellt sich dann aber die Frage, was alte Programme anstellen, wenn sie auf ein großes file losgelassen werden :-(. Problemloser wären dagegen sequentielle files, die ohne seek-Funktionen auskommen. Solange nur mit streams hantiert wird, ist die Größe des darunterliegenden files egal, weil das Programm die Position im stream eh nicht auswerten sollte (bzw. kennt). Das bedeutet, daß z.B. gzip an sich keine probleme mit großen files haben sollte, tar eigentlich auch nicht. Ob das in der Praxis auch so ist, steht natürlich auf einem anderen Blatt - da hängt noch zu viel dran. Allerdings beherrscht GNU tar für Linux den Zugriff auf große Bandlaufwerke mit >> 2 GB eigentlich problemlos (das sind nur char-devices, also im Endeffekt Streams). Alles in Allem also keine soo triviale Problematik. -- =========================================================== Erhard Schwenk - alias Bitrunner =)B==o) =========================================================== No Spam replies please. --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

* Erhard Schwenk schrieb am 29.Dez.1999:
- Die Definition der Parameter von lseek() bzw. fseek() in der libc sieht nur 32-Bit-Dateizeiger vor. Da die Parameter signed sind, gehen so max. 2 GB, wenn Byteweise adressiert werden soll (was viele Programme wohl voraussetzen dürften).
Ist nicht genau das der Grund, warum es bei Linux nicht mit Dateien größer 2GB klappt? AFAIK kann ext2 von Hause aus auch größere Dateien. Bernd -- Bei Fragen an die Liste erst mal nachschauen, ob es diese Frage nicht schon einmal gegeben hat. Ein Archiv der Liste findest Du auf: http://lists.suse.com/archives/suse-linux |Zufallssignatur 7 --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

[19991229 14:13], Torben Belz (linux@isb.net) fell asleep at the keyboard and... | wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer | bei eine Größe von 2.147.482.624 ende. Wie schon gesagt, ext2 macht max. 2G. Nimm' stattdessen reiserfs oder, auf die Schnelle, pipe den Output nach dd und lass mit seek/count/skip nur den Anfang/das Ende schreiben. -- Gruss / with best regards Jens-Eike Jesau <jens@hp9001.fh-bielefeld.de> /*************************************************************************** * `v'- Home: hp9001.fh-bielefeld.de/~jens * || |`. Linux on a single Disk: www.toms.net/rb *"If Windows is the solution; could we please get the problem back ?" */ --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

At 14:44 29.12.99 +0100, Jens-Eike Jesau wrote:
[19991229 14:13], Torben Belz (linux@isb.net)
| wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer | bei eine Größe von 2.147.482.624 ende.
Wie schon gesagt, ext2 macht max. 2G.
Nimm' stattdessen reiserfs oder, auf die Schnelle, pipe den Output nach dd und lass mit seek/count/skip nur den Anfang/das Ende schreiben.
ob da reiserfs weiterhilft wäre ich mir nicht sicher, bis jetzt konnte das auch nur 2GB, und in einer Mail in der reiserfs-mailingliste schribe mal einer, das es zwar vom prinzip mit dem Resierfs möglcih wäre grössere Dateien anzulegen, es scheitert aber wohl an allem drumherum, das es dann doch nicht geht ! Bei 3.5.12 hiess es, das es auch nicht mehr kann als 2GB, kann ich aber jetzt nicht probieren(mit 3.5.14), da sich der rechner immer stehenbleibt, wenn ich etwas intensiver darauf rumwerkle ! In einem neueren patch von Reiserfs sollte auch gleich mal ein patch mit dabei sein, der das mit den 2GB lösen sollte ! -- und servus Hans Klein /* http://www.net-con.net */ --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

Hi Torben, Torben Belz wrote on Wed, Dec 29 1999:
Hi Liste,
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home
warum?
Weil für Linux die maximale Größe einer Datei bei 2 GB liegt. Da hilft imho nur eins: Die .tar-Datei splitten. Die Parameter -M und -L sind deine Freunde. Ruf mal tar --help auf und schau dir die Ausgabe an. Mit Shift-PageUp kommst du auch an die Zeilen, in denen diese Parameter erklärt werden. Eine andere Alternative wäre 'info tar' . Aber damit kommt nicht jeder zurecht. Ich z.B. nicht. :-( Guten Rutsch! Gruss Herbert -- Dieser Beitrag wurde ohne Intel- oder M$- Produkte erstellt. Outside of a dog, a book is man's best friend. Inside of a dog, it is too dark to read. (Groucho Marx) --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home
Da hilft imho nur eins: Die .tar-Datei splitten. Die Parameter -M und -L sind deine Freunde.
oweit so gut. Jetzt kann ich die Größe des Archives genau bestimmen. Aber wie sage ich tar das er automatisch ein neues file beginnt? mit freundlichen Gruessen, Torben Belz -------------------------------------------------------------------- isb GmbH http://www.isb.net/ fon: +49 421 20259-0 Faulenstr. 2-12 DPN Verbundparter Bremen fax: +49 421 20259-69 D-28195 Bremen Deutsches Provider Network belz@isb.net PGP Publickey: http://www.isb.net/belz.asc -------------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

Torben Belz wrote:
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Da hilft imho nur eins: Die .tar-Datei splitten. Die Parameter -M und -L sind deine Freunde.
soweit so gut. Jetzt kann ich die Größe des Archives genau bestimmen. Aber wie sage ich tar das er automatisch ein neues file beginnt?
hallo Torben, ein Ansatz wäre z.B.: tar --multi-volume --tape-length 204800 --volno-file tarfile.volno --new-volume-script tarfile.sh tarfile.tar <quelle> und in tarfile.sh benenne ich die Volumes anhand von Volume-Nummern um: mv tarfile.tar tarfile.tar.`cat tarfile.volno` und die Nachfrage ist auch schon weg ;--) geht sicher noch eleganter und professioneller, nur zu... Gruß, Martin --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

ein paar kleinere Korrekturen noch... Martin Stark wrote:
ein Ansatz wäre z.B.: tar --multi-volume --tape-length 204800 --volno-file tarfile.volno
--new-volume-script tarfile.sh -cvf tarfile.tar <quelle> ^^^^ es fehlte leider ||||
und in tarfile.sh benenne ich die Volumes anhand von Volume-Nummern um: mv tarfile.tar tarfile.tar.`cat tarfile.volno`
tarfile.sh etwas verbessert: mv tarfile.tar tarfile.tar.$((`cat tarfile.volno` - 1)) damit's bei 1 beginnt... das letzte Archiv bleibt allerdings ohne Nummer (Shell-Experten!) und: tarfile.volno sollte man vorher jeweils löschen... Gruß, Martin --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

Torben Belz wrote:
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
Ich mach das mit dem Befehl: tar clvSP --numeric-owner datei.tgz /home
Da hilft imho nur eins: Die .tar-Datei splitten. Die Parameter -M und -L sind deine Freunde.
soweit so gut. Jetzt kann ich die Größe des Archives genau bestimmen. Aber wie sage ich tar das er automatisch ein neues file beginnt?
mkfifo tarfile.tgz split -b 2048m tarfile.tgz datei tar clvSP --numeric-owner /home > tarfile.tgz & Und zum Entpacken: cat datei* > tar ... -- __ _ Raymond Häb, ray.haeb@gmx.net, cologne, germany / / (_)__ __ ____ __ / /__/ / _ \/ // /\ \/ / . . . t h e c h o i c e o f a /____/_/_//_/\_,_/ /_/\_\ G N U g e n e r a t i o n . . . --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

Raymond Haeb wrote:
Torben Belz wrote:
wenn ich ein "paar" Dateien mit tar zusammenfasse, dann ist immer bei eine Größe von 2.147.482.624 ende.
[...] uper-elegant! zum praktischen Einsatz hätte ich noch ein paar Anmerkungen ;--)
mkfifo tarfile.tgz split -b 2048m tarfile.tgz datei
plit -b 2048m tarfile.tgz datei & ^ |
tar clvSP --numeric-owner /home > tarfile.tgz &
tar czlvSP --numeric-owner /home > tarfile.tgz ^ |
Und zum Entpacken:
cat datei* > tar ...
cat datei* | tar ... ^ | Gruß, Martin --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com

Hi, Martin! Trying to kill the keyboard, Martin Stark (Martin.Stark@rz-online.de) produced 0,8K in 46 lines:
super-elegant!
ACK. Was gelernt.
tar czlvSP --numeric-owner /home > tarfile.tgz
^ |
Nein. Du willst das nicht gzippen. Vor allem, wenn du ein Backup machst ... ein bitflip und aus ists. (Wenn doch, das z ist immer noch da. Ein " | bzip2 -9 -c " geht IIRC auch.) -Wolfgang --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
participants (13)
-
antwerpen@netsquare.org
-
B.Brodesser@online-club.de
-
eschwenk@fto.de
-
fr@prokscha.de
-
hansi.klein@net-con.net
-
herbert@hoepfner.prima.de
-
hoexter@orgaprog.de
-
jens@hp9001.fh-bielefeld.de
-
linux@isb.net
-
Martin.Stark@rz-online.de
-
mha@suse.de
-
ray.haeb@gmx.net
-
weissel@ph-cip.uni-koeln.de