Portál AbcLinuxu, 7. května 2025 14:39
Řešení dotazu:
pigz
je kompresor, nikoliv archivní program.
V linuxu se tyto úlohy oddělují. tar
se používá na "zabalení" adresářové struktury do jednoho souboru, zatímco kompesor komprimuje soubor na menší velikost.
zip, rar, 7z
známé z windows tyto úlohy spojují do jedné. (Ano i tar
lze použít s parametry -z
apod, které současně i komprimují do zvoleného formátu.)
Takže pokud chcete komprimovat adresář do jednoho archivu a využít všechny pocesory, je nutné to spojit:
tar -cf - adresar | pigz > soubor.tar.gzMísto
pigz
můžete zvolit třeba pixz
a mít tak lepší komprimační poměr (LZMA2, tj to, co používá i ten 7z), nebo zstd
a mít tak rychlejší kompresi (dle zvolených parametrů).
> /mnt/druhy_disk/soubor.tar.gzznak
>
je výstup z předchozího příkazu do souboru, soubor lze uvést jak relativní tak i absolutní cestou.
mksquashfs
. Je možné ho rozbalit jako archiv nebo ho připojit jako read-only souborový systém. Automaticky komprimuje data pomocí zlib, lz4, lzo, nebo xz, dekomprese probíhá až při čtení souboru, vyhledává a slučuje duplicity a pokud detekuje soubor, který kompresí nabyde, což je běžné u obrázků, nekomprimuje ho. Pamatuji-li si to správně, umí vytvořený archiv také rozkouskovat do více souborů.
S časem komprimace není problém. Pokud máte dost času, nechte to běžet, protože s tím nic neuděláte ani kdyby se ten adresář rozkrájel.
tar -cf - a.txt | pigz > soubor.tar.gz
cca soubor s 23 +- GB daty a ten jsem úspěšně "splitl" po 4 GB následně zpracoval.
Děkuji za pomoc.Vyřešeno
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.