To zależy od tego, czego szukasz ... Kompresja czy archiwizacja?
Kiedy mówię o archiwizacji, mam na myśli zachowanie uprawnień, struktury katalogów itp.
Kompresja może zignorować większość tego i po prostu umieścić pliki w mniejszych pakietach.
Aby zachować uprawnienia do plików, użyj tar:
tar cpvf backup.tar folder
Flaga p zapisze uprawnienia do plików. Użyj flagi z do kompresji gzip lub flagi j do kompresji bzip.
tar czpvf backup.tar.gz folder #backup.tgz is acceptable as well
tar cjpvf backup.tar.bz2 folder #backup.tbz2 works too
Jeśli chcesz mieć plik tar, możesz „zaktualizować” pakiet tar za pomocą flagi P:
tar cpPvf backup.tar folder
Następnie, aby zaktualizować, zamień „c” na „u”, a podczas rozpakowywania możesz użyć „k”, aby zachować pliki, które już istnieją.
tar upPvf backup.tar folder #updating a tar file
tar xpPkvf backup.tar #extracting a tar with permissions(p) and not extracting(k) files that exist on disk already
Flaga P zapisuje pliki z pełnymi ścieżkami, więc - / home / nazwa użytkownika vs home / nazwa użytkownika (zauważ wiodący ukośnik).
Kompresja 7z zapewnia lepszą kompresję, ale nie zachowuje własności plików, uprawnień itp. Rzip to kolejne narzędzie do kompresji, które oferuje również kompresję porównywalną z 7z.
Wydaje mi się, że plik backup.tar.7z jest tylko plikiem tar (z uprawnieniami) skompresowanym przez plik 7z, chociaż nie zdziwiłbym się, gdyby nastąpiła niewielka kompresja, ponieważ 7z może nie być w stanie zrzucić metadanych pliku. 7z jest w stanie wykluczyć metadane pliku, które może zaoferować doskonałą kompresję (między innymi oczywiście).
Kompresja zależy również całkowicie od typu danych. Niektóre pliki nie kompresują się dobrze, ponieważ mogą być już skompresowane w inny sposób (np. .Mp3, .jpg, .tiff / with lzma, .rpm itp.).
.7z
archiwum z wielu plików, a.tar.7z
archiwum z wielu plików?