Как создать TAR-архив в Linux

Сжатие файлов и директорий — одна из базовых функций любой ОС. В Linux стандартом для объединения файлов в один архив является формат Tape Archive, чаще называемый tar или tarball.
TAR сам по себе — это утилита для архивации (объединения) файлов без сжатия. Для уменьшения размера архива часто добавляют алгоритмы сжатия: gzip → .tar.gz, bzip2 → .tar.bz2, xz → .tar.xz.
Важно: tar не “открывает” архив как папку — сначала нужно распаковать его, чтобы получить обычные файлы и каталоги.
Установка tar на рабочем столе Linux
Большинство современных дистрибутивов уже содержит tar. Если у вас его нет, установите пакет командой, подходящей для вашего дистрибутива:
sudo apt install tarsudo pacman -S tarsudo yum install tarПримечание: команды установки запускаются с правами администратора. На некоторых системах используется dnf вместо yum.
Как создать TAR-архив и сжать данные в Linux
Откройте Терминал в каталоге, где находятся файлы или подкаталоги. Это можно сделать командой cd или через контекстное меню «Открыть в терминале».
Базовые команды tar:
tar -cvf archivename.tar directory_pathtar -czvf archivename.tar.gz directory_pathtar -cjvf archivename.tar.bz2 directory_pathГде ключи означают:
- -c — Create, создать архив
- -v — Verbose, подробно показывать обрабатываемые файлы
- -f — Filename, указывает имя выходного файла
- -z — gzip, сжатие gzip
- -j — bzip2, сжатие bzip2
- -J — xz, сжатие xz
Пример: чтобы сжать папку Test в файл Test-file.tar.gz:
tar -czvf Test-file.tar.gz Test
Мы создали TAR-файл с именем Test-file.tar.gz в примере выше.
Создание TAR-архива с помощью 7-Zip (GUI)
Если вы не любите терминал, установите 7-Zip или аналогичный архиватор с графическим интерфейсом. В файловом менеджере правый клик по директории → «Сжать» (Compress). В 7-Zip можно выбрать формат tar.xz, где xz — это современный алгоритм сжатия, более эффективный, чем gzip, но медленнее.

Шпаргалка: часто используемые команды tar
- Создать несжатый архив:
tar -cvf archive.tar folder - Создать gzip-архив:
tar -czvf archive.tar.gz folder - Создать bzip2-архив:
tar -cjvf archive.tar.bz2 folder - Создать xz-архив:
tar -cJvf archive.tar.xz folder - Просмотреть содержимое без распаковки:
tar -tvf archive.tarилиtar -tzvf archive.tar.gz - Распаковать архив:
tar -xvf archive.tar - Распаковать gzip-архив:
tar -xzvf archive.tar.gz - Распаковать в конкретную папку:
tar -xvf archive.tar -C /путь/к/папке
Совет: флаг -v полезен при отладке, но его можно опустить в автоматизированных скриптах, чтобы уменьшить лог.
Модель принятия решения: когда использовать tar
- Нужен перенос каталога с сохранением прав и символьных ссылок → tar
- Архив для резервного копирования локально или передачи на сервер → tar
- Требуется совместимость с Unix-подобными системами → tar
- Если нужна простая ZIP-совместимость с Windows → рассмотрите zip/7z
Альтернативы и сравнение
| Задача | tar (+gzip/xz) | zip | 7-Zip |
|---|---|---|---|
| Совместимость с Unix | Отличная | Хорошая | Хорошая |
| Сжатие (скорость/качество) | xz лучше, gzip быстрее | Среднее | Очень эффективно (7z) | Сохранение прав/владельцев | Да | Частично | Частично | | Простой обмен с Windows | Меньше удобств | Хорошо | Хорошо |
Когда tar не подходит
- Нужен архив напрямую открываемый как папка в Windows без дополнительных утилит.
- Требуется шифрование архива «из коробки» (tar не шифрует; используйте gpg или интеграцию с zip/7z).
- Нужна дедубликация по блокам или инкрементные резервные копии (используйте специализированные бэкап-решения).
Рекомендации по безопасности и совместимости
- Для передачи конфиденциальных данных шифруйте архив (например,
gpg -c file.tar.gz). - Для сохранения прав используйте tar на стороне получения, чтобы не терять UID/GID.
- При архивировании больших данных тестируйте распаковку на целевой системе.
Важно: перед удалением исходных данных после архивации убедитесь, что архив успешно распаковывается и целостен.
Шаблон (Playbook): быстрое руководство для админа
- Откройте терминал в каталоге с данными:
cd /путь/к/папке - Создайте архив с нужным сжатием:
tar -czvf имя-архива.tar.gz папка - Проверьте содержимое:
tar -tzvf имя-архива.tar.gz - Распакуйте для проверки:
tar -xzvf имя-архива.tar.gz -C /временная/папка - При положительном результате — перенесите/удалите исходные файлы согласно политике бэкапа.
Критерии приёмки
- Архив создаётся без ошибок командой tar.
tar -tzvfпоказывает ожидаемые файлы и структуру.- Архив распаковывается корректно в тестовой среде.
Тесты/Сценарии приёмки
- Создать архив с 100 небольшими файлами и распаковать: файлы совпадают по размеру и содержимому.
- Архив с большими бинарными файлами: проверка целостности после копирования на удалённый сервер.
Ключевые выводы
- tar — надёжный инструмент для объединения файлов и каталогов в Linux.
- Добавление gzip/bzip2/xz уменьшает объём, но влияет на скорость.
- Для GUI-пользователей подойдёт 7-Zip и файловые менеджеры.
Примечание: если вам нужно включить шифрование или инкрементное резервное копирование, комбинируйте tar с gpg или используйте специализированные решения для бэкапа.
Краткое резюме:
- Используйте
tar -czvfдля быстрого создания сжатых архивов. - Тестируйте распаковку перед удалением исходных данных.
- Выбирайте алгоритм сжатия (gzip/xz) исходя из баланса скорости и размера.
Похожие материалы
Блокировка времени в Google Календаре
Как снять 3D-печатную деталь со стола — проверенные методы
Пакетная конвертация и изменение размера изображений на Mac
CSS hover‑эффекты для изображений
FM‑трансмиттеры на телефоне — миф или реальность