Natív 7zip Linuxhoz

A 7zip egy rendkívül népszerű Windows program, amelyet archívumok létrehozására használnak. Alapértelmezés szerint a 7z formátumot használja, saját állítása szerint 30-70% -kal jobb, mint a normál ZIP formátum. Azt is állítja, hogy 2-10% -kal hatékonyabban tömöríti a szokásos ZIP formátumra, mint a többi ZIP-kompatibilis program. Ami önmagában nem mond semmit, hiszen a tömörítés függ az állományoktól, és nem csak a méret, hanem a tömörítési idő is fontos lehet.
Sokféle archív formátumot támogat, beleértve a zip, a gzip, a bzip2, a tar és a rar formátumokat. A Linuxnak régóta van p7zip-je, amit mindenki ismer, használ is sok ember. Bár én már mást használok, de amíg nem a pigz volt a kedvencem, addig a 7zip-et, vagy az arra épülő pluginokat használtam.

A 7Zip fejlesztők most először nyújtanak natív Linux támogatást. Így szól a hír. Nézzük is meg, miért is lesz érdemes váltani. Vagy nem?

p7zip vagy 7Zip? Mi a különbség?

A Linuxnak már egy ideje van p7zip-je. A p7zip a Windows 7zip csomag portja a Linux / Unix rendszerre. Az átlagos felhasználó számára nincs különbség! A p7zip csomag a 7zip közvetlen portja, ami így nem különbözik az „eredeti” Windows-os programtól.
De, és itt fontos a de! A 7Zip új natív Linux verziójának használatának legfőbb oka a frissítések. Sok disztribúcióban kapott p7zip csomag régi verzió, ami alapvetően nem gond, de a frissebb soha nem árt. Bár Arch alatt már frissebb érhető el, de egyes, nem rolling disztribúciókban a csomag régebbi verziója van meg. Keress rá a sajátodban, és nézd meg ezt.
Ugyanakkor az újonnan telepített 7zip verzió 21.01 (alfa), amely csak néhány napja jelent meg.

Bár nem feltétlen kell, de ha az új verziót szeretnéd, akkor neked kell telepíteni, kézzel, de nem forrásból.

Először le kell töltenünk a tar.zx csomagot a 7Zip webhelyről.

wget https://www.7-zip.org/a/7z2101-linux-x64.tar.xz

Ezután kibontjuk az archívumot. Én a ~/bin/ könyvtárba bontom, mivel ez a könyvtár a PATH-ban ott van. Lehet máshova is, mert gyakorlatilag csak annyi az elvárás, hogy a PATH-ba benne legyen, így pld. a ~/.local/bin is jó.

tar xvf 7z2101-linux-x64.tar.xz -C ~/bin/

Ennyi, most már készen áll a 7Zip használatára. Igen, ha belenézel a könyvtárba, egy futtatható állományt látsz. Sokan kifogásolják, hogy miért nem kapjuk meg a forráskódot, de itt nem tették közzé. Plusz egy alkönyvtárban a manuálokat!

Ha korábban telepítetted a p7zip csomagot, akkor most két hasonló parancs van. A p7zip csomag adja a 7z parancsot. Míg a 7Zip új natív verziója biztosítja a 7zz parancsot. Azaz NEM felülírtuk, lecseréltük a p7zip csomagot, hanem egy attól teljesen független programot raktunk fel.

Ha később olvasod a bejegyzést, akkor nézd meg az oldalukon, hogy van-e újabb verzió. Ezt mondani sem kell, hiszen ez természetes…

A natív 7Zip (7zz) használata

A 7Zip nagyon sok lehetőséget kínál. A teljes opciócsomag meghaladja a cikk kereteit. Bőven meghaladja! Így érdemes a 7zz parancsot lefuttatni, ami adja a helpet. Majd előbb az alap, később a haladóbb, összetettebb részt is átnézni.

Én az alapvető archívumkészítésre és -kibontásra térek ki.

7z archívum létrehozása 7Zip (7zz) használatával

7z archívum létrehozásához elindítjuk az újonnan telepített 7zz programot, és megadjuk az a (fájlok hozzáadása az archívumhoz) parancsot. Ezután megadjuk az archívum nevét és a hozzáadni kívánt fájlokat. Ennyi, a legtöbb tömörítő így működik. Ha egy könyvtárat akarsz összenyomni, és abban vannak alkönyvtárak, akkor az -r kapcsolót is használni kell.

7zz a -r 7zz.7z ./Mentes/*

Az archívum neve 7zz.7z lesz és a mentési könyvtárat tömörítse össze, minden alkönyvtárral.

7-Zip (z) 21.01 alpha (x64) : Copyright (c) 1999-2021 Igor Pavlov : 2021-03-09
compiler: 9.3.0 GCC 9.3.0 64-bit locale=hu_HU.UTF-8 Utf16=on HugeFiles=on CPUs:12 AMD Ryzen 5 3600 6-Core Processor (870F10),ASM,AES

Scanning the drive:
165 folders, 4955 files, 3490576855 bytes (3329 MiB)

Creating archive: 7zz.7z

Add new data to archive: 165 folders, 4955 files, 3490576855 bytes (3329 MiB)
Files read from disk: 4952
Archive size: 1947130615 bytes (1857 MiB)
Everything is Ok

Ahogy látni elég bőbeszédű, és mindent elmond, amit tudni kell.

Mivel teszt alatt van, így a time is fontos:

user=599,84s system=5,02s cpu=880% total=1:08,68

Most ugyanezt a kedvenc pigz-el

A time user=69,84s system=5,16s cpu=1048% total=7,152, ami sokkal rövidebb idő. A méret pedig 1,9 G (2010025983 bytes) ami 3%-kal nagyobb. Hm… jól tömöríti, de lassabb, sokkal az új 7zz.

Lehetne pár egyéb tömörítővel is összevetni, de hasonló értékeket kapunk, nincs olyan durva eltérés a tömörítők közt, hogy +/-2…6%-ért váltsunk, ha van kedvencünk. Ráadásul a tömörítés és annak eltérése erősen függ az alapanyagtól. Itt vegyes, szöveg, hang és videó, programok, képek is voltak a könyvtárban.
Természetesen a pigz sebessége verhetetlen, hiszen nagyon kihasználja az összes magot, amivel nem lehet versenyezni.

Így a p7Zip kimenetét is megnézhetjük:

7-Zip [64] 17.03 : Copyright (c) 1999-2020 Igor Pavlov : 2017-08-28
p7zip Version 17.03 (locale=hu_HU.UTF-8,Utf16=on,HugeFiles=on,64 bits,12 CPUs x64)

Scanning the drive:
163 folders, 4881 files, 3489302028 bytes (3328 MiB)

Creating archive: old.7z

Items to compress: 5044
Files read from disk: 4878
Archive size: 1947281392 bytes (1858 MiB)
Everything is Ok
user=739,28s system=7,42s cpu=856% total=1:27,15

Kicsit lassabb a régi, de a mérte egyező.

A fájlok kibontása archívumból natív Linux 7Zip (7zz) használatával nagyon egyszerű
Itt a e (extract) parancsot használjuk.

7zz e test.7z

Ahogy látni, a gyorsabb működés és a frissebb verzió miatt érdemes lehet áttérni rá, de ha egy másik tömörítőt használunk, pld. pigz-et, akkor már össze kell vetni vele a saját használati szokásainknak és az elvárásainknak.

Related Posts