Все Linux/BSD системы имеют установленный по умолчанию архиватор tar (англ. tape archive) . TAR не создаёт сжатых архивов, а использует для сжатия внешние утилиты, такие, как gzip и bzip2. Одним из преимуществ явяется то, что в архив записывается вся информация о структуре каталогов, владельце и группе, а также временные метки.
Как сжать файлы или каталоги в Linux с помощью tar?
# tar -cvf archive_name.tar /var/www/mysite/*
c — create archive (создание архива)
v — verbose (выдача дополнительных сообщений при создании архива в консоль)
f — создать файл на диске
/var/www/mysite/* - архивируемые файлы через пробел.
Как сжать содержимое tar архива с помощью сторонних утилит?
# tar -cvzf archive_name.tar.gz /var/www/mysite/*
В этом примере содержимое архива будет сжато архиватором gzip
Как распаковать tar архив в текущую папку?
# tar -xf archive_name.tar - извлечь обычный архив tar в текущую директорию
# tar -xzf archive_name.tar.gz - извлечь сжатый архив tar в текущую директорию
Как извлечь содержимое архива tar в указанную папку?
# tar -xf archive.tar -C /var/www/mysite - извлечь обычный архив tar в директорию /var/www/mysite
# tar -xzf archive.tar.gz -C /var/www/mysite - извлечь сжатый архив tar в директорию /var/www/mysite
Как исключить файл или папку при архивировании или создании архива tar?
Для исключения файлов или папки используется опция --exclude
# tar --exclude='/var/www/mysite/*' -cvzf archive_name.tar.gz /var/www/mysite/*
В этом примере архивируем всю директорию /var/www/mysite, но исключаем из архива папку /var/www/mysite/temp