Це залежить від того, що ви шукаєте ... Стиснення чи архівування?
Коли я говорю про архівування, я маю на увазі збереження дозволів, структури каталогів тощо ...
Стиснення може ігнорувати більшість із цього і просто отримувати ваші файли меншими пакетами.
Щоб зберегти дозволи файлів, використовуйте tar:
tar cpvf backup.tar folder
Прапор p збереже права доступу до файлів. Використовуйте прапор z для стиснення gzip або j прапор для стиснення bzip.
tar czpvf backup.tar.gz folder #backup.tgz is acceptable as well
tar cjpvf backup.tar.bz2 folder #backup.tbz2 works too
Якщо ви хочете мати файл tar, ви можете "оновити" пакет tar, використовуючи прапор P:
tar cpPvf backup.tar folder
Потім для оновлення, заміни "c" на "u", і при розпакуванні ви можете використовувати "k" для збереження вже існуючих файлів.
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
Прапор P зберігає файли з повними шляхами, тому - / home / username vs home / username (зверніть увагу на провідну косу рису вперед).
Стиснення 7z пропонує більшу компресію, але не зберігає право власності на файли, дозволи та ін.
Я думаю, що файл backup.tar.7z - це лише файл tar (з дозволами), стиснутий 7z-файлом, хоча я не здивуюсь, якщо трапиться невелике стиснення, оскільки 7z може не змогти скинути метадані файлу. Це здатність 7z виключити метадані файлів, які можуть забезпечити велике стиснення (серед іншого, звичайно).
Стиснення повністю залежить також від типу даних. Деякі файли не стискаються, тому що вони вже можуть бути стиснуті іншими засобами (наприклад, .mp3, .jpg, .tiff / з lzma, .rpm тощо).
.7z
архів з декількох файлів, тоді як я також можу зробити.tar.7z
архів з декількох файлів?