6.4.3 Як архівувати та розпаковувати архіви через SSH. Робота з архівами через SSH
Архіви є невід’ємною частиною сучасної роботи з даними, забезпечуючи ефективне стиснення інформації та економію місця на файловій системі. Проте їх значення не обмежується лише компактністю – архіви також є зручним та надійним засобом зберігання інформації. У цій статті ми розглянемо ключові консольні інструменти для роботи з архівами за допомогою SSH, підключення до якого є необхідним для виконання будь-яких подальших дій.
Популярні формати архівів:
- TAR (
.tar
) – широко використовується для архівації файлів на Unix-системах. Програма з тим самим ім’ям дозволяє працювати з різними форматами архівів. Для стиснення використовуються зовнішні утиліти, такі як gzip, bzip2, lzip та інші. При створенні архіву може бути записана додаткова інформація, така як відомості про власника та структура каталогів. - GZ (
.tar.gz
,.tgz
,.tar.gzip
) – виконує стиснення даних за допомогою утиліти tar (для одного файлу) або комбінації утиліт gzip + tar (для декількох файлів). Його особливість полягає в здатності працювати з неперервним потоком даних, що робить GZ оптимальним інструментом для стиснення інтернет-трафіку. - BZIP2 (
.tar.bz2
,.tar.bzip2
,.tbz2
,.tb2
,.tbz
) – безкоштовна утиліта, яка забезпечує високоякісну компресію даних, в основному використовується на Unix-платформах. Порівняно з GZ вона працює повільніше та вимагає більше обчислювальних ресурсів, але забезпечує більш ефективне стиснення. - ZIP (
.zip
) – застосовується на операційних системах Windows і дозволяє стискати файли та каталоги за допомогою різних алгоритмів. ZIP підтримується практично всіма операційними системами, включаючи Windows, Mac OS X та Unix/Linux. Також можливе створення саморозпаковуючого архіву у вигляді виконуваного SFX-файла. - RAR (
.rar
) – використовується для роботи з архівацією на операційних системах сімейства Windows. Аналогічно до формату ZIP, RAR підтримується багатьма операційними системами.
Робота з архівами TAR, GZ, BZIP2
Загальний синтаксис команд:
Основні аргументи:
-c
– створити архів.-f
– вивести ім’я або шлях до архіву.-t
– показати файли в архіві (застосовується до вже створеного архіву).-v
– показати оброблювані файли.-a
– стиснути або витягнути дані з архіву з автоматичним вибором утиліти (gzip, bzip та інші), залежно від вказаного розширення. Наприклад, якщо файл називаєтьсяfile.tar.gz
, то до архіву автоматично буде застосовано стиснення за допомогою gzip.-x
– розархіувати дані з архіву.
Приклад: створення архіву .tar
Приклад: розархівація архіву .tar
в поточний каталог
Приклад: розархівація архіву .tar
в певний каталог
Приклад: створення архіву .tar.gz
Приклад: розархівація архіву .tar.gz
в поточний каталог
Приклад: розархівація архіву .tar.gz
в певний каталог
Приклад: створення архіву .tar.bz2
Приклад: розархівація архіву .tar.bz2
в поточний каталог
Приклад: розархівація архіву .tar.bz2
в певний каталог
Робота з .zip-архівами
Для роботи з цим типом архівів будуть використовуватися програми zip та unzip.
Зверніть увагу: на деяких дистрибутивах ці утиліти можуть бути відсутні, тому перед роботою слід встановити відповідні пакети.
CentOS/AlmaLinux/RockyLinux
Debian/Ubuntu
Приклад: створення архіву .zip
Приклад: розархівація даних з архіву .zip
Якщо не вказувати аргумент -d
, то файли будуть розпаковані в каталог, де знаходиться архів, вказаний у команді.
Приклад: додавання файлів до існуючого архіву .zip
Приклад: перегляд вмісту архіву .zip
Приклад: розархівація конкретних файлів з архіву .zip
Робота з .rar-архівами
Для роботи з архівами .rar
знадобляться утиліти rar та unrar.
Зверніть увагу: на деяких дистрибутивах ця утиліта може бути відсутньою, тому перед роботою слід встановити відповідні пакети.
CentOS/AlmaLinux/RockyLinux
Debian/Ubuntu
Приклад: архівація даних в архів .rar
Щоб заархівувати каталог повністю (з усіма вкладеними папками та файлами), слід додати ключ -r
. Команда буде виглядати так:
Приклад: розархівація даних з архіву .rar
Це не є помилкою, вам потрібен саме аргумент x
для розархівації. Аргумент -x
дозволяє вказати винятки при виконанні команди.