Архиватор tar — наиболее распространенный архиватор, используемый в Linux-системах.
Я для вас (и себе на памятку) решил на русском языке привести основные, наиболее ходовые применимые в «быту» примеры создания и распаковки архивов, постаравшись разжевать для простыми и подробными пояснения, что да как. А также постарался частично перевести на русский язык использование некоторых опций. Казалось бы, что тут сложного с этими архивами, уж что, что, а это плевое дело.
Но жизнь подсказывает, что нет нет, а постоянно мы обращаемся к мануалам, ищем в сети готовые решения, подсказки и даже не смотря на все то, что мы неоднократно ранее уже все это повторяли и проходили. Но на практике все просто, слишком у нас много иных забот, чтобы в голове держать все то, что мы когда либо в жизни делали, верно? Ну для чего нам тогда всякие книги, заметки и блокноты? То то! 🙂
На всякий пожарный мануал Tar для FreeBSD
freebsd.org tar manual
В самом низу статьи еще один мануал, более краткий, выдернутый из Debian 9.
How to install Tar.gz programs in Linux?
Ну а мы переходим к насущному..
Используемые параметры (ключи, опции) tar
Можно использовать любые ключи, как короткие, так и длинные, то есть из первого столбца или из второго. Некоторые ключи не существуют в коротком виде, в таком случае необходимо использовать только длинные ключи.
Создать архив tar.gz
# Задача: Создать архив tar.gz с сжатием gzip. # # Переходить в нужный каталог не обязательно, команду можно выполнить из любого места. # # 1. Указываем ключи -czf. # 2. Указываем полный путь и название нового архива. # 3. Указываем полный путь к директории источнику. # # В результате, в директории /archives создастся архив new.tar.gz с содержимым # каталога /home/documents. tar -czf /archives/new.tar.gz /home/documents
Создать бекап tar.gz с сохранением путей и прав доступа
# Задача: Создать бекап tar.gz с сжатием gzip. # # Переходить в нужный каталог не обязательно, команду можно выполнить из любого места. # # 1. Указываем ключи -cPzf. # 2. Указываем полный путь и название нового архива. # 3. Указываем полный путь к директории источнику. # # В результате, в директории /archives создастся архив new.tar.gz с содержимым # каталога /home/user/site. tar -cPzf /backups/new.tar.gz /home/user/site
Распаковать архив tar.gz в текущую директорию
# Задача: Распаковать архив tar.gz в текущую директорию. # # 1. Переходим в нужный каталог. # 2. Указываем ключи -xzf. # 3. Указываем полный путь к архиву источнику. # # В результате выполнения, содержимое архива archive.tar.gz распакуется в директории, # в которой мы сейчас находимся, в данном случае это будет в /home/here. # Переходим в нужный каталог cd /home/here # Распаковываем в текущий каталог содержимое, указав полный путь к архиву источнику. tar -xzf /pub/downloads/archive.tar.gz
Распаковать архив tar.gz в указанную директорию
# Задача: Распаковать архив tar.gz в указанную директорию. # # Переходить в нужный каталог не обязательно, команду можно выполнить из любого места. # # 1. Указываем ключи -xzf. # 2. Указываем полный путь к архиву источнику. # 3. Указываем полный путь места назначения с помощью ключа -C. # # В результате выполнения, содержимое архива archive.tar.gz распакуется в # указанный каталог, в данном случае в директорию /home/here. tar -xzf /pub/downloads/archive.tar.gz -C /home/here
Распаковать содержимое архива tar.gz в текущую директорию с сохранением прав доступа
# Задача: Восстановить содержимое архива с сохранением/восстановлением прав доступа. # # Чтобы распаковать содержимое архива в таком режиме, добавляем ключ -p. # # 1. Переходим в нужный каталог. # 2. Указываем ключи -xzpf. # 3. Указываем полный путь к архиву источнику. # # В результате выполнения команды, содержимое архива backup.tar.gz распакуется с # восстановленными правами доступа, которые ранее были на момент архивации файлов. # Содержимое архива archive.tar.gz распакуется в директории, в которой мы сейчас # находимся, в данном случае это будет в /home/here. # Переходим в нужный каталог cd /home/here # Распаковываем в текущий каталог содержимое, указав полный путь к архиву источнику. tar -xzpf /pub/downloads/backup.tar.gz
Распаковать содержимое архива tar.gz в указанную директорию с сохранением прав доступа
# Задача: Восстановить содержимое архива с сохранением/восстановлением прав доступа. # # Чтобы распаковать содержимое архива в таком режиме, добавляем ключ -p. # # 1. Указываем ключи -xzpf. # 2. Указываем полный путь к архиву источнику. # 3. Указываем полный путь места назначения с помощью ключа -C. # # В результате выполнения команды, содержимое архива backup.tar.gz распакуется с # восстановленными правами доступа, которые ранее были на момент архивации файлов. # Содержимое архива archive.tar.gz распакуется в указанный каталог, в данном случае # в директорию /home/here. tar -xzpf /pub/downloads/backup.tar.gz -C /home/here
Восстановить содержимое архива tar.gz с сохранением путей и прав доступа
# Задача: Восстановить содержимое архива с сохранением путей и прав доступа. # Этот способ идеальное средство для бекапа и восстановления файлов. # Данный режим не инкрементный, но поддерживается также не только Linux, но # и в FreeBSD. Примечание: в FreeBSD не поддерживается инкрементный режим. # # Чтобы распаковать содержимое архива с сохранение путей и прав доступа, добавляем # ключ -p для восстановления прав доступа, а также ключ -P для восстановления иерархии # каталогов от корня.
Данный ключ не удаляет ведущие косые черты из имен элементов. # # 1. Указываем ключи -xPzpf. # 2. Указываем полный путь к архиву источнику. # # В результате выполнения команды, содержимое из архива backup.tar.gz распакуется в том виде и # структуре с восстановленными правами доступа, которые ранее были на момент # архивации. По мере восстановления файлов, иерархия каталогов (в случае отсутствия) будет # воссоздана с нуля от самой корневой директории. Совпадающие на пути файлы будут # заменены/восстановлены, существующие иные файлы не будут затронуты. # # Примечание: в данном режиме с ключем -P нельзя одновременно использовать ключ -C, то есть # нельзя указать каталог назначения. Это просто не сработает, все равно будет восстановлена # исходная структура каталогов и файлов. Если хотите указать свой каталог для восстановления, # просто удалите опцию -P из запроса. tar -xPzpf /pub/downloads/backup.tar.gz
Распаковать архив в указанный каталог с сохранением прав доступа, но откинув например три начальные директории (Извлечь отдельную ветку каталогов)
# Задача: Извлечь отдельную ветку каталогов. # # Чтобы распаковать часть иерархии архива (с сохранение прав доступа также добавлен ключ -p), # мы будем использовать новую дополнительную опцию ‘—strip-components=NUMBER’, где значение # NUMBER, это количество отброшенных (слева) начальных элементов. # # В архиве /archives/sitebk.2017.09.07.tar.gz: # /usr/home/user/virtual/site # Из архива будет извлечено в директорию /home/here: # virtual/site # tar -xzpf /usr/sitebk.2017.09.07.tar.gz —strip-components=3 -C /home/here
Добавить файл в архив tar
# Добвляем к архиву archive.tar файл add.txt. # Не забываем про ключ -P, если нужно. tar -rf archive.tar add.txt
Оригинальный MAN GNU tar Debian
Источник: sageleo.com
Программа Tar в Linux. Как пользоваться Tar?
Tar — это стандартная программа для работы с архивами в Linux и Unix системах. Утилита Tar при создании архивов, так же записывает в него информацию о правах, структуре и временные метки файлов. Программа Tar следует философии Unix (Делать одну вещь, но делать ее хорошо), поэтому она не сжимает архив. Для сжатия используются внешние утилиты bzip2 (расширение — bz2) и gzip (расширение — gz).
Синтаксис программы Tar
Для архивации:
tar [-опции] [файлы, которые нужно поместить в архив]
Для распаковки:
Опции команды Tar:
-c | (- -create) | Создать новый архив |
-x | (- -extract) | Извлечь файлы из архива |
-v | (- -verbose) | Выводит подробную информацию процесса |
(- -totals) | Выводит итоговую информацию завершенного процесса | |
-j | (- -bzip2) | Перенаправить вывод в команду bzip2 |
-z | (- -gzip) | Перенаправить вывод в команду gzip |
-f | (- -file) | Указать имя архива. |
-p | (- -same-permissions) | Сохранить все права доступа к файлу |
-d | (- -diff) (- -delete) |
Проверить различие между архивами Удалить из существующего архива файл |
-r | (- -append) | Присоединить файлы к концу архива |
-t | (- -list) | Сформировать список содержимого архива |
-u | (- -update) | Обновить архив более новыми файлами с тем же именем |
-A | (- -concatenate) | Присоединить существующий архив к другому |
-C /home/user | (- -directory=/home/user) | Распаковка в альтернативное место /home/user |
Как пользоваться Tar
Создание архива с помощью Tar
У нас есть 5 файлов: test1.txt, test2.txt, test3.txt, test4.txt, test5.txt
Создадим архив с этими файлами без сжатия:
tar -cvf archive.tar test1.txt test2.txt test3.txt test4.txt test5.txt
Создание архива папки folder1 с сжатием bz2:
tar -cjvf archive.tar.bz2 folder1
Создание архива с сжатием gz:
tar -czvf archive.tar.gz test1.txt test2.txt test3.txt test4.txt test5.txt
Распаковка архива с помощью Tar
Чтобы распаковать tar архив в текущую директорию, нужно выполнить команду (archive название архива. в вашем случае укажите название своего архива):
tar -xvf archive.tar
Распаковка tar в директорию. Например в директорию /home/testdir:
tar -xvf archive.tar -C /home/testdir
tar xvjf archive.tar.bz2
tar xvzf archive.tar.gz
Как посмотреть, что в внутри архива?
tar -tf archive.tar.gz
Источник: mertviyprorok.com
Linux как установить программу tar gz?
Для установки пакета из репозитория достаточно выполнить команду apt install с указанием имени пакета. Эта команда сама найдёт адрес файла . deb, скачает его, определит и скачает необходимые зависимости и затем всё это установит. В случае выхода новых версий пакетов, их все можно обновить одной командой — очень удобно.
Как установить TAR GZ в Windows?
- Извлеките тарбол.
- Найдите файл с именем README или аналогичный. .
- Если есть файлы с именем что-то вроде Makefile.am , возможно, вам понадобится запустить automake чтобы продолжить.
- Если есть файл с именем configure который является исполняемым, запустите его. .
- Если есть файл с именем что-то вроде Makefile.
Куда устанавливать программы в Linux?
В Ubuntu пользовательские программы в большинстве случаев устанавливаются в директорию /usr, но программа находится не в одной папке, а разделена на части: /usr/bin — исполняемые файлы программ /usr/sbin — исполняемые файлы программ, которые запускаются с правами администратора
Как скачивать приложения на Линукс Минт?
Нажимаем Alt+F3 — откроется меню поиска приложений, в котором вы сможете найти все установленные на данный момент программы в системе, затем прописываем в поисковой строке «Менеджер программ» и запускаем: Здесь вы найдете множество популярных программ и приложений для решения множества задач.
Как распаковать файл DEB?
- deb data. tar. gz | tar zx -C .
- deb data. tar. bz2 | tar jx -C .
- deb data. tar. lzma | unlzma | tar x -C .
Как установить DEB файл в Linux?
Для установки файла . deb, войдите в систему как суперпользователь root (или просто выполните команду sudo, набрав затем корректный пароль) и выполните в командной строке Ubuntu следующую команду: dpkg -i file. deb где file. deb, тот файл .
Как открыть DEB файл на Linux?
- В Windows: 7-Zip, WinArchiver, ZipZag, PeaZip.
- В Linux: Debian package management system, Synaptic Package Manager, Adept, GDebi, Alien.
- В Apple iOS (iPhone, iPad, iPod): Cydia, Jailbreak.
Источник: dmcagency.ru