Программа tar используется для создания tar-архивов и манипулирования ими. Архив — это файл, заключающий в себе содержимое многих файлов. Кроме того, архив идентифицирует имена файлов, их хозяев и т.д. (в архивах также записываются разрешение доступа, пользователь и группа, размер в байтах и время последней модификации. В некотрых архивах еще указываются имена файлов в каждом заархивированном каталоге и информация о каталогах).
Изначально tar-архивы использвались для компактнго хранения файлов на магнитной ленте — отсюда термин tar (tape archiver). Вне зависимости от имени утилиты tar может направлять свой вывод на любое доступное устройство, а текже хранить ее в файле или направлять в другую программу через канал. tar также может иметь дооступ к удаленным устройствам и файлам.
Вот некоторые опции, используемые с командой tar:
-c — создать новый архив
-f — в сочетании с опцией -c используется для создания файла tar из указанного файла; в сочетании с опцией -x используется для разархивирования указанного файла
-t — показать список файлов в файле tar
-v — показывать ход выполнения процесса архивирования
-x — извлечь файлы из архива
-z — сжать файл tar с помощью программы gzip
-j — сжать файл tar с помощью программы bzip2
Чтобы создать файл tar, наберите в командной строке:
tar -cvf имя_файла.tar каталог/файл
В этом примере имя_файла.tar — создаваемый архивный файл, каталог/файл — каталог или файл, который необходимо поместить в архивный файл.
Вы можете создать файл tar из нескольких файлов и каталогов одновременно, перечислив их через пробел:
tar -cvf имя_файла.tar /home/mine/work /home/mine/school
Эта команда поместит все файлы из каталогов work и school, принадлежащих каталогу /home/mine, в новый файл с названием имя_файла.tar в текущем каталоге.
Создать архив backups.tar.gz из директории /path/backup со всеми файлами и папками внутри, но Исключить из архивации директории с именами PATTERN1, PATTERN2
tar -czf backups.tar.gz --exclude=PATTERN1 --exclude=PATTERN2 /path/backup
Для просмотра содержимого файла наберите в командной строке:
tar -tvf имя_файла.tar
Чтобы извлечь содержимое файла tar, наберите:
tar -xvf имя_файла.tar
Эта команда не удаляет файл tar, а помещает копии разархивированного содержимого в текущий рабочий каталог, сохраняя всю структуру, содержавшуюся в архивном файле. Например, если файл tar содержит файл bar.txt в каталоге foo/, в результате разархивирования будет создан каталог foo/ в текущем каталоге и файл bar.txt внутри него.
Помните, что команда tar по умолчанию не сжимает файлы. Для создания архивного файла tar, сжатого при помощи bzip, используйте опцию -j:
tar -cjvf имя_файла.tbz файл
Файлам tar, сжатым при помощи bzip2, принято давать расширение .tbz или tar.bz2.
Указанная выше команда создает архивный сжатый файл имя_файла.tbz. При разархивировании файла имя_файла.tbz при помощи команды bunzip2 файл имя_файла.tbz удаляется и заменяется файлом имя_файла.tar.
Вы можете также извлечь содержимое и разархивировать файл bzip tar с помощью одной команды:
tar -xjvf имя_файла.tbz
Для создания tar файла, сжатого при помощи gzip, используйте опцию -z:
tar -czvf имя_файла.tgz файл
tar файлам, сжатым при помощи gzip, принято давать расширение .tgz.
Эта команда создает архивный файл имя_файла.tar и сжимает его в файл имя_файла.tgz (файл имя_файла.tar не сохраняется). Если вы декомпрессируете файл имя_файла.tgz с помощью команды gunzip, файл имя_файла.tgz удаляется и заменяется на файл имя_файла.tar.
Вы можете извлечь содержимое gzip tar файла одной командой:
tar -xzvf имя_файла.tgz