Tar (сокр. от «tape archiver» — ленточный архиватор) – утилита, которая может создавать резервные копии от одного файла до целой системы. Она способна выполнять несколько различных операций, которые задаются через параметры в командной строке. Разновидность этих операций называют режимами. Кроме того, tar признан множеством производителей операционных систем, как общий стандарт, поэтому можно повстречать эту программу не только во FreeBSD, но и в других операционных системах.
Существует так же интересная особенность у tar — «молчаливость», недостаток это или нет, решать вам. Заключается это в том, что tar делает резервную копию, даже если файловая система повреждена. После чего, с таким же успехом tar восстановит файлы, которые были повреждены ещё до момента архивирования.
Рассмотрим примеры работы во FreeBSD.
Синтаксис:
tar [-ключи] [название архива] [путь, что запаковать]
Создать архив .tar:
#tar -cvf file-name.tar /full/path
Создать архив .tar.gz:
#tar -czvf file-name.tar.gz /full/path
Создать архив .tar.bz2:
#tar -cjvf file-name.tar.bz2 /full/path
Синтаксис:
tar [-ключи] [название архива]
#tar -xvf file-name.tar.gz
или
#tar -xzf file-name.tar.gz
Теперь о разширениях:
.tar.gz – файл tar сжатый архиватором gzip;
.tar.bz2 – файл tar сжатый архиватором bzip2.
Архиватор bzip2 имеет большую компрессию по сравнению с gzip, однако, gzip более распространён и используется чаще, нежели bzip2.
Часто используемые ключи:
с — Создать архив.
z – Архив .tar.gz
j — Архив .tar.bz2
x — (eXtract) извлечь файлы из архива.
v — Показ лога в консоли при работе с архивом.
f — Если не задан этот ключ, tar попытается использовать магнитную ленту вместо файла архива.
z — Обрабатывать архив, сжатый утилитой gzip (расширение .gz), если опция не указана — tar выдаст ошибку. Опция не должна использоваться для несжатых архивов.
t — Просмотр содержимого архива.
Это лишь часть ключей, которые наиболее часто могут использоваться, однако при необходимости вы всегда можете набрать команду в консоли:
#man tar
На экране будет показана подсказка о возможности использования утилиты tar.
Стоит так же отметить, что в системе FreeBSD есть библиотека libarchive, которая способна автоматически определять тип сжатия при создании резервных копий. Таким образом, при создании архива вы явно указываете тип сжатия архива. При распаковке архива, можно позволить программе самостоятельно определить тип сжатия, после чего она примет решение как с ним работать.