У випадку з Linux VPS з урахуванням OpenVZ та KVM для роботи з архівами достатньо базових компонентів системи, а саме Tar, Gzip та Bzip2, які при створенні стиснутого архіву працюють як єдине ціле, бо сам по собі архіватор Tar не передбачає можливість стиснення даних. Для цієї мети якраз і використовується Gzip або Bzip2. Архіви, створені із застосуванням Gzip зазвичай мають розширення .tar.gz , а при використанні Bzip2 — .tar.bz2.
Зміст
- Створення tar-архіву без стиснення
- Створення архіву з використанням стиснення
- Розпакування архіву
- Перегляд вмісту архіву без розпакування
- Створення та розпакування ZIP-архівів
- Розпакування RAR-архівів
- Приклад створення резервної копії даних на VPS
Створення tar-архіву без стиснення
Для створення такого архіву використовується команда:
tar -cf filename.tar file1 file2 fileN
Параметр –cf відповідає за створення архіву filename.tar, до якого увійдуть зазначені файли. Замість файлів можуть бути вказані директорії.
Створення архіву з використанням стиснення
Оскільки для стиснення доступні як мінімум два методи, для кожного з них використовується окремий набір параметрів.
Приклад стиснення Gzip:
tar -cvzf filename.tar.gz dir_name
У цьому випадку ми спробували запакувати папку dir_name в архів filename.tar.gz. З вказаних параметрів -z вказує використання методу Gzip , а -v виводить результати процесу створення архіву із зазначенням упакованих файлів чи папок.
Приклад стиснення Bzip2:
tar -cvjf filename.tar.bz2 dir_name
Ця команда аналогічна до попередньої і має відмінність тільки у параметрі –j. Саме цей параметр відповідає за використання методу стиснення Bzip2.
Розпакування архіву
Для того, щоб розпакувати архів, використовується команда:
tar -xvf filename.tar.bz2
У цьому випадку архів filename.tar.bz2 буде розпакований у ту папку, в якій ви знаходились у момент запуску команди. Для того, щоб розпакувати архів в якусь іншу директорію, можна використовувати команду:
tar -xvf filename.tar.bz2 -C /path/to/folder
У цьому випадку архів розпакується у вказаній директорії.
Перегляд вмісту архіву без розпакування
Для цього використовується така команда:
tar -tf filename.tar.gz
У результаті виконання команди виведеться список файлів та папок, які зберігаються в архіві. Якщо до списку параметрів додати -v, то вийде розширений висновок інформації про вміст із зазначенням розміру файлів, прав доступу, іменами власників та їх груп тощо.
Переглянути повний перелік можливостей архіватора tar можна за допомогою команд:
tar --help #виклик довідки за командами та параметрами man tar #виклик розширеної документації
Створення та розпакування ZIP-архівів
Створення zip-архіву виконується командою:
zip archive.zip filename
Замість archive.zip вказуємо ім’я створюваного архіву. Замість filename вказуємо ім’я файлу, який потрібно архівувати. Для архівації цілої папки необхідно використовувати параметр –r, який ініціює рекурсивне архівування. Без цього параметра буде заархівовано лише папку без вкладених у неї файлів. Приклад команди:
zip –r archive.zip dirname
Розпакування архіву проводиться командою unzip:
unzip archivename.zip
Якщо потрібно розпакувати в конкретну папку, для цього використовується параметр –d. Наприклад:
unzip –d dirname archivename.zip
Замість dirname вказується папка, в яку потрібно витягти дані з архіву.
Переглянути повний список можливостей архіватора zip та unzip можна за допомогою команд:
zip --help або unzip --help #виклик довідки за командами та параметрами man zip або man unzip #виклик розширеної документації
Розпакування RAR-архівів
Для вилучення вмісту архіву використовується команда unrar:
unrar filename.rar
Переглянути список файлів в архіві без його розпакування можна командою:
unrar –t filename.rar
Примітка: Варто зазначити, що Unrar може бути відсутнім за замовчуванням у деяких Linux-дистрибутивах. Встановити це програмне забезпечення можна такими командами:
CentOS/Fedora :
yum install unrar
Debian/Ubuntu :
apt-get install unrar-free
Переглянути повний список можливостей архіватора unrar можна за допомогою команд:
rar --help #виклик довідки за командами та параметрами man unrar #виклик розширеної документації
Приклад створення резервної копії даних на VPS
Допустимо, на VPS необхідно зробити резервну копію файлів сайту, які розміщуються в директорії /var/www/html/mysite. Щоб створити стислий архів даних, розміщених у зазначеній директорії, необхідно виконати таку команду:
tar -cvzf mysite.tar.gz /var/www/html/mysite
В результаті вміст директорії /var/www/html/mysite буде запаковано в архів mysite.tar.gz.
Якщо ви хочете перенести подібний архів з одного VPS на інший, але не знаєте, як це зробити, то про це ви можете дізнатися у статті Способи перенесення файлів між серверами.