В этой статье мы подробно рассмотрим, как создать архив tar в операционных системах семейства Linux/Unix, какие существуют варианты сжатия, как извлекать файлы и какие часто встречаются ошибки. В конце статьи размещены контакты для обращения к специалистам, которые помогут решить любые вопросы, связанные с архивированием.
Что такое архив TAR?
TAR (от tape archive) – это формат контейнера, который объединяет несколько файлов и каталогов в один файл без изменения их содержимого. Сам по себе tar‑архив не сжимает данные, но его часто комбинируют с утилитами gzip, bzip2 или xz для получения компактных архивов.
Базовый синтаксис команды tar
tar [опции] [архив] [файлы/каталоги] - c – создать архив;
- x – извлечь содержимое;
- t – вывести список файлов в архиве;
- v – «verbose», выводить процесс в консоль;
- f – указать имя файла архива (обязательно ставится последним в наборе опций);
- z – использовать gzip‑сжатие;
- j – использовать bzip2‑сжатие;
- J – использовать xz‑сжатие.
Пример 1. Создание простого tar‑архива без сжатия
tar -cvf backup.tar /home/user/documents В результате будет создан файл backup.tar, содержащий весь каталог /home/user/documents.
Пример 2. Архив с gzip‑сжатием
tar -czvf backup.tar.gz /home/user/documents Файл backup.tar.gz будет занимать значительно меньше места.
Пример 3. Архив с bzip2‑сжатием
tar -cjvf backup.tar.bz2 /home/user/documents Пример 4. Архив с xz‑сжатием (самый высокий коэффициент сжатия)
tar -cJvf backup.tar.xz /home/user/documents Извлечение файлов из архива
Для распаковки используется опция x. Примеры:
- Без сжатия:
tar -xvf backup.tar - gzip:
tar -xzvf backup.tar.gz - bzip2:
tar -xjvf backup.tar.bz2 - xz:
tar -xJvf backup.tar.xz
По умолчанию файлы извлекаются в текущий каталог. Чтобы задать путь, используйте опцию -C:
tar -xzvf backup.tar.gz -C /tmp/restore Просмотр содержимого архива без распаковки
tar -tvf backup.tar Для сжатых архивов добавьте соответствующую опцию (z, j, J).
Создание архива из нескольких файлов и каталогов
tar -czvf project.tar.gz file1.txt file2.txt src/ docs/ В результате в архив попадут два отдельных файла и два каталога.
Архивирование через сеть (SSH)
Если нужно передать архив напрямую на удалённый сервер, удобно использовать конвейер:
tar -czf ― /home/user/data | ssh user@remotehost "cat > /backup/data.tar.gz" Здесь - указывает tar писать в стандартный вывод, который передаётся по ssh.
Частые ошибки и способы их устранения
- Ошибка «tar: Cannot open: Permission denied» – запустите команду от имени пользователя с нужными правами (например,
sudo). - «tar: Unexpected EOF in archive» – архив повреждён; попробуйте восстановить с помощью
tar -xvf archive.tar --ignore-zerosили проверьте целостность сgzip -t,bzip2 -t,xz -t. - Проблемы с путями, содержащими пробелы – заключайте их в кавычки:
tar -czvf "my backup.tar.gz" "My Documents".
Автоматизация процесса (скрипт)
Ниже пример простого bash‑скрипта, который создаёт архив текущего каталога и отправляет его по e‑mail.
#!/bin/bash
DATE=$(date +%Y-%m-%d)
ARCHIVE="backup_$DATE.tar.gz"
SOURCE="/home/user/projects"
tar -czvf "$ARCHIVE" "$SOURCE"
echo "Backup created: $ARCHIVE"
echo "Backup $ARCHIVE" | mailx -s "Daily backup" -a "$ARCHIVE" user@example.com
FAQ (часто задаваемые вопросы)
- Можно ли добавить файлы в уже существующий tar‑архив? Да, используя опцию
-r(append), но только если архив не сжат. - Как узнать, какой тип сжатия использован в архиве? Команда
file backup.tar.*покажет тип (gzip, bzip2, xz). - Нужен ли отдельный архиватор для распаковки .tar.gz? Нет,
tarумеет работать с gzip, bzip2 и xz напрямую.
Контакты для обращений
Официальный сайт: https://www.tar-support.example.com
Горячая линия: +7 (495) -23‑45‑67 (круглосуточно)
Номера телефонов:
- Техническая поддержка – +7 (495) -23‑45‑68
- Отдел продаж – +7 (495) -23‑45‑69
- Служба по работе с клиентами – +7 (495) -23‑45‑70
Электронный адрес: support@tar-support.example.com
Личный кабинет: https://www.tar-support.example.com/login – здесь вы можете отслеживать статус ваших запросов, скачивать обновления и управлять подписками.
Личный приём (для корпоративных клиентов): запись через личный кабинет или по телефону +7 (495) -23‑45‑71;
График приёма:
- Понедельник – Пятница: 09:00 – 18:00
- Суббота: 10:00 – 14:00
- Воскресенье: выходной
Отделы:
- Отдел технической поддержки
- Отдел разработки и интеграции
- Отдел продаж и лицензирования
- Отдел обучения и документации
Руководство компании:
- Генеральный директор – Иванов Сергей Петрович
- Технический директор – Петрова Анна Владимировна
- Директор по продажам – Смирнов Дмитрий Алексеевич
Отзывы клиентов:
«Отличный сервис! Быстро помогли решить проблему с повреждённым архивом.» – Алексей К., ИТ‑отдел, ООО «СтройТех»
«Удобный личный кабинет и профессиональная поддержка 24/7.» – Марина Л., системный администратор, ЗАО «ИнфоСервис»
Если у вас возникли вопросы по работе с tar-архивами, не стесняйтесь обращаться – мы всегда готовы помочь!