Архивация в Linux: как создать и распаковать архив .tar.gz
Работа с архивами .tar.gz в Linux
Файлы с расширением .tar.gz (или .tgz) — это файлы, объединенные архиватором tar и сжатые компрессором gzip. Это основной формат передачи бэкапов сайтов, исходных кодов и дистрибутивов в серверных средах Linux.
Основные команды для работы с tar.gz
1. Как запаковать (создать) архив
tar -czvf backup_site.tar.gz /var/www/my_site- -c (create) — создать новый архив;
- -z (gzip) — сжать с помощью алгоритма Gzip;
- -v (verbose) — показывать список архивируемых файлов в терминале;
- -f (file) — имя создаваемого архива.
2. Как распаковать архив в текущую папку
tar -xzvf backup_site.tar.gz- -x (extract) — извлечь файлы из архива.
3. Как распаковать архив в другую конкретную папку
Используйте ключ -C с указанием целевого пути:
tar -xzvf backup_site.tar.gz -C /opt/destination/4. Как просмотреть файлы внутри архива без распаковки
tar -ztvf backup_site.tar.gzШпаргалка запоминания:
Для создания архива: c (Create) → tar -czvf
Для распаковки: x (eXtract) → tar -xzvf
Частые вопросы (FAQ)
Как исключить ненужную папку (например, кэш) при создании архива?
Используйте флаг --exclude: tar --exclude='my_site/cache' -czvf archive.tar.gz my_site.
Что делать, если при распаковке возникает ошибка Permission denied?
У вас нет прав на запись в целевую папку. Запустите команду с правами администратора: sudo tar -xzvf archive.tar.gz -C /var/www/.
Сохраняет ли tar права доступа к файлам?
Да, архиватор tar полностью сохраняет исходные права владельцев (UID/GID) и права на исполнение/чтение (chmod).
Как распаковать обычный файл с расширением .tar (без .gz)?
Просто уберите букву z из параметров: tar -xvf archive.tar.