Tar створити архів папки. Розпакувати tar, створити tar - зручна інструкція

І Xen для роботи з архівами достатньо базових компонентів системи, а саме Tar, Gzipі Bzip2, які під час створення стиснутого архіву працюють як єдине ціле, т.к. сам по собі архіватор Tarне передбачає можливість стиснення даних. Для цієї мети якраз і використовується Gzipабо Bzip2. Архіви, створені із застосуванням Gzipзазвичай мають розширення .tar.gz, а при використанні Bzip2.tar.bz2.

Створення 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.

У цьому матеріалі ми розглянемо, як можна розпакувати архів TAR. Створюється цей файл за допомогою програмних комплексів, розроблених для платформи Unix.

Опис

Перш ніж розглянути, як розпакувати TAR, слід розібратися, для яких цілей було розроблено цей формат. Файл такого типу містить загальний архів, що складається з кількох матеріалів. TAR - це загальноприйняте розширення серед Unix. Цей формат використовується для передачі різного програмного забезпечення. Досить часто TAR використовується для формування архівів у файловій системі. Файл зберігає всю інформацію про матеріали, включаючи структуру каталогів та тимчасові мітки. В одному файлі такого типу може міститися безліч матеріалів. Отже, як TAR розпакувати? Windows - ОС, у якій найчастіше працюють користувачі ПК. Почнемо із неї.

Як розпакувати архів у Windows?

Зараз ми розглянемо програму WinZip. Цей інструмент дозволить розпакувати TAR. Йдеться про умовно-безкоштовний файловий архіватор і компресор, який був створений фірмою Corel. Інструмент має безліч можливостей. Він дозволяє створювати, доповнювати, а також розпаковувати архіви. Реалізована інтеграція, що настроюється, в середу Microsoft Windows. Підтримуються 128- та 256-бітові ключі Можна здійснити прямий запис архівів на DVD або CD. Реалізовано автоматизацію резервного копіювання. Підтримується протокол FTP. Можливе надсилання архівів за допомогою електронної пошти. Підтримується Юнікод.

Взаємодіяти з цікавим для нас форматом можна і за допомогою програми 7-Zip. Йдеться про вільний файловий архіватор, який має високий рівень стиснення даних. Розробка програми ведеться з 1999 року. Інструмент розповсюджується безкоштовно. Додаток має відкритий вихідний код. Передбачено дві версії програми. Перша має графічний інтерфейс. Друга працює на основі командного рядка. У додатку є вбудований інструмент для тестування продуктивності. Реалізовано багатомовний графічний інтерфейс, що має функції двовіконного файлового менеджера. Для імені файлів підтримується Юнікод. 7-Zip використовує багатопоточність. При стисканні використовуються спеціальні фільтри-нормалізатори.

Також нам допоможе програма Smith Micro StuffIt Deluxe. Йдеться інструмент для роботи з різними архівами. Програма дозволяє шифрувати дані та робити резервні копії. Архівовані файли можна захистити паролем. При цьому застосовується криптування 256- та 512-бітними ключами. Програма вміє автоматично додавати інформацію, що дозволяє відновлювати архіви. Реалізовано можливість перегляду стислих файлів та папок. Є вбудований планувальник, а також обмін файлами за допомогою мережі Інтернет.

Інші операційні системи

Тепер ми розглянемо, як розпакувати TAR у Mac OS. Для цього підійде програма Apple Archive Utility. Також можна застосувати програму Incredible Bee Archiver. На Android також можна працювати з цим форматом. Для цього підійде програма File Viewer for Android. Йдеться про універсального файлового менеджера, який підтримує понад сто форматів. Матеріалами можна керувати чи переглядати їх. Можливе розпаковування архівів цікавого для нас формату. Також можна використовувати програму RarLab. Розпакувати TAR на Linux допоможе інструмент GNU Tar.

tar- Це архіватор від GNU. tar бере кілька файлів та/або каталогів та об'єднує їх в один великий файл. Це дозволяє вам стиснути ціле дерево каталогів, що неможливо зробити за допомогою bzip2. У tar"а є багато опцій, які докладно описані на його сторінці посібника.

$ man tar tar -xvvf foo.tar extract foo.tar tar -xvvzf foo.tar.gz extract gzipped foo.tar.gz tar -cvvf foo.tar foo/ tar contents of folder foo in foo.tar

Ключі команди, що часто використовуються, tar

    C – створити (create) новий архів

    X – витягти (extract) файли з архіву

    –delete – видалити (delete) файли з архіву

    R – додати (append) файли до існуючого архіву

    A – додати (append) tar-файли до існуючого архіву

    T – список файлів в архіві (вміст архіву)

    U – оновити (update) архів

    D – операція порівняння архіву із заданою файловою системою

    Z – обробка архіву за допомогою Приклади використання gzip та gunzip. Стиснення або розтискання залежно від комбінації супутніх ключів -c або -x.

    J – обробка архіву з допомогою bzip2. Стиснення або розтискання залежно від комбінації супутніх ключів -c або -x.

tar запускається з обов'язковим зазначенням однієї з основних дій, найпоширеніші з яких - створення та розпакування архівів, далі задаються інші параметри, що залежать від конкретної операції.

Найбільш загальне використання tar полягає в розпакуванні та розархівуванні пакета, завантаженого з веб- або ftp-сайту. Більшість файлів мають розширення tar.gz. Досить часто їх називають "tarball""ами. Це означає кілька файлів, заархівованих tar"ом, а потім стислих gzip"ом. Ви також можете зустріти файли.tar.Z. По суті це те ж саме, проте зустрічаються вони в основному на старі системи Unix.

Крім того, ви можете натрапити на файли.tar.bz2. У такому вигляді поширюються вихідні тексти ядра, оскільки вони займають менше місця для завантаження. Як ви вже напевно здогадалися, це файли, заархівовані tar"ом та стиснуті bzip"ом.

Ви можете витягти всі файли з такого архіву, скориставшись tar"ом з декількома опціями командного рядка. Розархівування тарболу виконується за допомогою опції -z, яка означає, що спочатку файл повинен бути пропущений через gunzip, а вже потім розпакований. Найбільш загальний метод розпакування тарболів :

% tar -xvzf файл.tar.gz

Тут багато опцій. Що вони означають? Опція -x означає вилучення. Це важливо, оскільки вона повідомляє tar"у, що саме потрібно зробити з вхідним файлом. В даному випадку він буде знову розбитий на файли, з яких він був зліплений". Опція -v означає включення докладного режиму. При цьому на екран будуть виведені назви всіх файлів, що витягуються з архіву. Непогано було б використовувати цю опцію, щоб розпакування не виглядало занадто нудно. у тому, що файл.tar.gz потрібно спочатку пропустити через gunzip. І, нарешті, опція -f повідомляє tar"у, що наступний рядок у командному рядку - це файл, з яким треба працювати.

Існує кілька способів запису цієї команди. На старих системах, на яких відсутня відповідна копія GNU tar, ви можете побачити наступний запис цієї команди:

%gunzip файл.tar.gz | tar -xvf -

У цій команді файл спочатку розпаковується, а результат вирушає до tar. Т.к. gzip за промовчанням записує вихідні дані на стандартний висновок, ця команда записуватиме розпакований файл на стандартний висновок. Потім конвеєр перенаправляє цей потік у tar для розпакування. Знак "-" означає, що дані беруться зі стандартного входу. Таким чином, команда розархівує потік даних, отриманий з gzip, і запише його на диск.

Іншим способом запису початкової команди є прибирання знака "-" перед опціями:

% tar xvzf файл.tar.gz

Також ви можете натрапити на bzip"нутий архів. Версія tar, представлена ​​в Slackware Linux, може працювати з ними так само, як і з gzip"нутими архівами. Просто замість -z вам потрібно використовувати -j:

% tar -xvjf файл.tar.bz2

Врахуйте, що tar зберігатиме вилучені з архіву файли до поточного каталогу. Тому, якщо у /tmp є архів, який ви хочете розпакувати в свій домашній каталог, у вас є кілька варіантів. Перший - архів можна перемістити до вашого домашнього каталогу, а потім розгорнути його за допомогою tar. Другий – ви можете вказати шлях до архіву в командному рядку. Третій – ви можете використовувати опцію -C, щоб розархівувати тарбол у вказаний після цієї опції каталог.

% cd $HOME % cp /tmp/файл.tar.gz . % tar -xvzf файл.tar.gz % cd $HOME % tar -xvzf /tmp/файл.tar.gz % cd / % tar -xvzf /tmp/файл.tar.gz -C $HOME

Усі наведені вище записи є еквівалентними. У кожній із них архів розгортається у ваш домашній каталог, а вихідний стислий архів залишається дома.

Отже, що доброго в тому, що ви можете розпаковувати архіви, якщо ви не можете створювати їх? tar вміє робити це. Найчастіше можна легко замінити опцію “-x” на “-c”.

%tar-cvzf файл.tar.gz.

У цій команді опція -c повідомляє tar"у, що потрібно створити архів, а опція -z пропускає отриманий архів через gzip, щоб стиснути його. файл.tar.gz - це ім'я файлу, що створюється.

Вказівка ​​опції "-f" не завжди є обов'язковою, однак у будь-якому випадку краще її використовувати. Без неї tar буде записувати свої дані на стандартний висновок, що зазвичай використовується для перенаправлення потоку конвеєром в іншу програму, наприклад, так:

% tar -cv файл.tar. | gpg --encrypt

Ця команда створює несжатий tar-архів із вмістом поточного каталогу, а потім пропускає тарбол через програму gpg, яка шифрує та стискає архів, унеможливлюючи його читання будь-ким, у кого немає вашого секретного ключа.

tar через ssh

Якщо комп'ютер-джерело та цільовий комп'ютер пов'язані по LAN або WAN, то для економії часу можна комбінувати використання SSH (Secure Shell) та tar для архівування, копіювання та вилучення файлів за один раз. Ось як це робити:

$ (cd ~/stuff; tar --create --gzip --file - *) | \ ssh destination tar --extract --gunzip --file --verbose -C stuff

У цій команді виконується одразу кілька дій. Давайте розберемо її:

    Послідовність команд, укладених у круглих дужках, називають вкладеною оболонкою – subshell. Зміни, зроблені в subshell-оболонці - наприклад, зміна каталогу - не вплинуть на команду в цілому, а торкнуться лише середовище вкладеної оболонки. Тому перша керуюча послідовність - (cd ~ / stuff; tar - create - gzip - file - *) змінює поточний робочий каталог на ~ / stuff, а потім запускає tar. Так як за вкладеною оболонкою слід перенаправлення в канал, всі результати роботи subshell посилаються в наступну на черзі команду.

    Як і багато інших UNIX-утиліт, tar може писати стандартний потік виведення (stdout) і читати зі стандартного потоку введення (stdin). І stdout і stdin зазвичай позначаються дефісом (-). Тому команда -create -file - створює архів у stdout.

    Канал (|) передає всі результати роботи subshell в утиліту ssh, яка, своєю чергою, передає всі необхідні дані з вихідного комп'ютера на віддалений.

    Нарешті, віддалений комп'ютер запускає власний екземпляр утиліти tar для отримання даних з архіву. Тепер –extract –file – зчитує архів зі стандартного потоку введення. Опція -C змушує tar на цільовому комп'ютері змінити поточний робочий каталог на stuff, перш ніж розпочати будь-які операції розархівування. Кінцевим результатом роботи цієї команди загалом буде передача архіву через ssh та розпакування його в ~/stuff.

Отже, за допомогою однієї команди архів було створено, передано та розпаковано. До речі, трохи змінивши цю команду, можна копіювати архів з віддаленого комп'ютера на локальний і розархівувати його. Ось команда, яку для цього потрібно виконати на локальному комп'ютері:

$ ssh destination cat archive.tgz | \ (cd ~/stuff; tar --extract --gunzip --file-)

Архів на віддаленому комп'ютері буде відкритий, потім потік байтів з cat буде надісланий у вкладену оболонку, яка змінить робочий каталог, а потім витягне архів. (Додавання -C ~/stuff до команди tar призведе до тих же результатів; приклад показує лише те, що subshell теж можуть працювати з вхідними даними.)

tar exclude

-exclude pattern (-W exclude=pattern) Не обробляти файли або директорії, які збігаються із вказаним шаблоном. Зверніть увагу, що винятки мають пріоритет над шаблонами або іменами файлів, вказаних у командному рядку.

    Приклад: З директорії test при архівуванні tar виключити піддиректорію.svn tar-czf

    Приклад: При архівуванні поточної директорії та стисненням Приклади використання gzip і gunzip , виключити файл з розширеннями.tar.gz.iso.deb.py$tar-czf test.tar.gz *.* " --exclude="*.iso" --exclude="*.deb" --exclude="*.zip" --exclude="*.py"

tar із збереженням прав доступу

Створити архів із збереженням прав доступу. Ключ -p, –preserve-permissions, –same-permissions отримувати інформацію про права доступу до файлу (за замовчуванням для суперпользователя)

Tar-cvpf archive.tar.gz dir1

Розпакувати архів із збереженням прав доступу

Tar-xvpf archive.tar.gz

tar розпакувати в потрібну директорію

Щоб розпакувати архів у потрібну директорію використовується ключ

# man tar ... -C directory У режимі c і r, this changes the directory before adding the following files. У режимі x, зміни directories після завершення архіву, але до вилучення передач від архіву. ...

Наприклад, приклад перевірений для FreeBSD:

# tar -xvf /usr/home/darkfire/backup.ns.server.254/usr/ports/distfiles.tar -C /usr/ports/

tar split розбити архів на кілька частин

Split -b 1000m distfiles.tar distfiles.split.tar

У результаті ви отримаєте багато файликів типу

Distfiles.split.taraa distfiles.split.tarab distfiles.split.tarai

100m означає 100 мегабайт. Можете написати 100k – це буде 100 кілобайт. Зібрати їх можна ось так:

Cat distfiles.split.tar* | tar zxvf -

tar- Найпоширеніший архіватор, що використовується в Linux-системах. Сам собою tar перестав бути архіватором у звичному розумінні цього терміну, т.к. він самостійно не використовує стискування. У той же час багато архіваторів (наприклад, Gzip або bzip2) не вміють стискати кілька файлів, а працюють тільки з одним файлом або вхідним потоком. Тому найчастіше ці програми використовуються разом. tar створює стислий архів, у якому містяться вибрані файли і каталоги, зберігаючи деякі атрибути (такі як права доступу). Після цього отриманий файл *.tar стискається архіватором, наприклад, gzip. Ось чому архіви зазвичай мають розширення .tar.gz або .tar.bz2 (для архіваторів gzip та bzip2 відповідно)

Використання

tar запускається з обов'язковим зазначенням однієї з основних дій, найпоширеніші з яких - створення та розпакування архівів, далі задаються інші параметри, що залежать від конкретної операції.

Створення архіву

Для створення архіву необхідно вказати tar відповідну дію, що робиться за допомогою ключа -c. Крім того, для пакування вмісту у файл потрібен ключ -f. Далі вкажемо спочатку ім'я майбутнього архіву, а потім файли, які хочемо запакувати.

Tar-cf txt.tar *.txt

Ця команда запакує всі файли з розширенням txt в архів txt.tar. Так і створюється найпростіший архів без стискування. Для використання стиснення не потрібно запускати будь-що, достатньо вказати tar, яким архіватором слід стиснути архів. Для двох найпопулярніших архіваторів gzip та bzip2 ключі будуть -z та -j відповідно.

Tar-cvzf files.tar.gz ~/files

запакує папку ~/files з усім вмістом у стислий за допомогою gzip архів.

Tar-cvjf files.tar.bz2 ~/files

створить аналогічний архів, використовуючи для стиснення bzip2.

Ключ -v включає виведення списку упакованих файлів у процесі роботи. На жаль, більш просунутої індикації ходу процесу (наприклад, вказівки ступеня готовності у відсотках) у tar не передбачено. Для цього використовуйте графічні архіватори (наприклад, Xarchiver) або використовуйте файл-менеджер.

Крім gzip і bzip2 можна використовувати, наприклад, lzma (ключ -lzma) або xz (ключ -J), при цьому відповідний архіватор має бути встановлений у системі.

Розпакування архіву

Дія «розпакування» визначається за допомогою ключа -x . І тут знову буде потрібно ключ -f для вказівки імені файлу архіву. Також додамо ключ -v для візуального відображення процесу.

Tar -xvf /path/to/archive.tar.bz2

розпакує вміст архіву в поточну папку. Альтернативне місце для розпакування можна вказати за допомогою ключа -C:

Tar -xvf archive.tar.bz2 -C /path/to/folder

Перегляд вмісту архіву

Щоб переглянути вміст архіву, використовуйте таку команду:

Tar-tf archive.tar.gz

Вона виведе простий список файлів та каталогів в архіві. Якщо ж додати ключ -v, буде виведено докладний список із зазначенням розміру, прав доступу та інших параметрів (так само, як за ls -l)

Інші можливості

tar надає багато корисних можливостей. Наприклад, можна вказати файли та каталоги, які не будуть включені до архіву, додати файли до існуючого архіву, взяти список об'єктів для запакування з текстового файлу та багато чого ще. У всьому різноманітті опцій як завжди допоможе розібратися

man tar tar --help

Як створити архів.

tar -cvf file.tar /full/path - створити.tar

tar -czvf file.tar.gz /full/path - створити.tar.gz (архів)

tar -cjvf file.tar.bz2 /full/path - створити.tar.bz2 (архів)

Синтаксис цих прикладів:
tar [-ключи] [назва архіву] [шлях, що запакувати]

Як відкрити (розпакувати) .tar

Щоб розпакувати запаковуй. tar: tar -xvf file.tar.gz

Синтаксис: tar [-ключи] [назва архіву]

Ключі архіватора

- (Create) створити архів.
z – створює архів. tar.gz
j – створює архів.tar.bz2
x - (eXtract) дозволяє витягувати файли з архіву.
v - робить висновок tar докладним. Це означає, що на екрані будуть виведені всі знайдені в архіві файли. Якщо цю опцію опущено, інформація, що виводиться в процесі обробки, буде обмежена.
f – є обов'язковою опцією. Без неї tar намагається використати магнітну стрічку замість файлу архіву.
z - дозволяє вам обробляти архів, стислий gzip"ом (з розширенням.gz). Якщо ви забудете вказати цю опцію, tar видасть помилку. І навпаки, ця опція не повинна використовуватися для стиснених архівів.
t – (Test) переглянути вміст архіву.

Докладніше про ключі та можливості ви можете дізнатися, набравши команду в середовищі Unix
[~]# man tar

У файлах .tar можна зберігати кілька папок (структуру папок та файлів).
Краще використовувати з ключами для архівації файлу .tar, щоб в результаті вийшли файли з розширенням .tar.gz (файл.tar стиснутий архіватором gzip) або.
bzip2 краще стискає, але з gzip більш поширеним, тому краще стискати цим архіватором.
Якщо у вас встановлено WinRAR, то проблем із відкриттям.tar.bz2 та.tar.gz не буде.

Історія архіватора

tar(англ. tape archive) - формат бітового потоку чи файлу архіву, і навіть назва традиційної для Unix програми до роботи з такими архівами. Програма tar була стандартизована у POSIX.1-1998, а також пізніше в POSIX.1-2001. Спочатку програма tar використовувалася для створення архівів на магнітній стрічці, а в даний час tar використовується для зберігання декількох файлів усередині одного файлу, для розповсюдження програмного забезпечення, а також за прямим призначенням - для створення архіву файлової системи. Однією з переваг формату tar при створенні архівів є те, що в архів записується інформація про структуру каталогів, про власника та групу окремих файлів, а також тимчасові мітки файлів.
Як і інші утиліти Unix, tar - спеціалізована програма, яка слідує філософії Unix: «робити тільки одну річ» (працювати з архівами), «але робити її добре». Тому tar не створює стислих архівів, а використовує для стиснення зовнішні утиліти, такі як gzip та bzip2. Раніше для стиску використовувалася також утиліта compress, яка практично вийшла із вжитку.

Примітка

Через досить пізню стандартизацію існує кілька схожих, але не до кінця сумісних форматів. Зокрема різницю між GNU tar та SUN Solaris tar спостерігається при довжині імені файлу, що включається до архіву, більше 100 символів або розміру файлу, що включається до архіву, більше 8 ГБ.

Розширення імен файлів

Для файлів, що містять архіви tar, зазвичай застосовуються такі розширення імен файлів:

архів tar:
.tar

архів tar, стиснутий програмою gzip:
.tar.gz
.tgz (у разі обмежень файлової системи на довжину розширення)
.tar.gzip

архів tar, стиснутий програмою bzip2
.tar.bz2
.tar.bzip2
.tbz2
.tb2
.tbz

архів tar, стислий програмою compress
.tar.Z
.taz

архів tar, стиснутий програмою LZMA
.tar.lzma

архів tar, стислий програмою XZ
.tar.xz

архів tar, стиснутий програмою lzop