📦 Руководство по архивированию в Linux: tar, gzip, gunzip, unrar
Подробное руководство по архивированию и разархивированию файлов в Linux с использованием встроенных утилит. Основной упор на tar.gz и RAR файлы.
🔹 1. tar — создание и распаковка архивов .tar и .tar.gz
tar — это стандартная утилита для архивирования файлов и директорий в Linux.
Синтаксис
tar [options] archive_name files_or_directories
Основные опции
| Опция | Описание |
|---|---|
-c |
Создать новый архив |
-x |
Извлечь файлы из архива |
-v |
Подробный вывод (verbose) |
-f |
Указать имя архива (обязательно) |
-z |
Сжать/распаковать через gzip (.tar.gz) |
-j |
Сжать/распаковать через bzip2 (.tar.bz2) |
-C |
Извлекать файлы в указанную директорию |
Примеры
Создание архива .tar.gz
tar -czvf backup.tar.gz /home/user/docs/
c— создать архивz— gzip сжатиеv— вывод списка файловf— имя архива
Извлечение архива
tar -xzvf backup.tar.gz
Извлечение в указанную директорию
tar -xzvf backup.tar.gz -C /home/user/restore/
Архив без сжатия
tar -cvf backup.tar /home/user/docs/
Архив с bzip2 (.tar.bz2)
tar -cjvf backup.tar.bz2 /home/user/docs/
tar -xjvf backup.tar.bz2
[!TIP] Используйте
-vдля контроля процесса, особенно при больших архивах.
🔹 2. gzip и gunzip — сжатие и разжатие файлов
gzip используется для сжатия отдельных файлов, обычно вместе с tar (tar.gz).
Синтаксис
gzip file # создаёт file.gz
gunzip file.gz # распаковывает file.gz
Примеры
Сжатие файла
gzip report.txt
# результат: report.txt.gz
Разжатие файла
gunzip report.txt.gz
# восстановлен report.txt
Просмотр содержимого без распаковки
zcat report.txt.gz
Сжатие с максимальным уровнем
gzip -9 largefile.log
🔹 3. unrar — работа с RAR архивами
RAR не является встроенным стандартом Linux, но unrar — часто доступный пакет для работы с архивами .rar.
Установка
Debian/Ubuntu:
sudo apt update
sudo apt install unrar
RedHat/CentOS/Fedora:
sudo dnf install unrar
Синтаксис
unrar [options] archive.rar [destination]
Основные опции
| Опция | Описание |
|---|---|
x |
Извлечь файлы с полными путями |
e |
Извлечь файлы в текущую директорию (без путей) |
l |
Просмотр содержимого архива |
v |
Подробный вывод |
Примеры
Просмотр содержимого RAR архива
unrar l archive.rar
Извлечение архива с сохранением структуры каталогов
unrar x archive.rar /home/user/restore/
Извлечение в текущую директорию
unrar e archive.rar
Извлечение с подтверждением перезаписи
unrar x -o+ archive.rar
[!TIP]
unrarлучше использовать для извлечения RAR-файлов; для создания RAR на Linux нуженrar(платный) или использовать альтернативу7z.
🔹 4. Комбинированные примеры
- Создание
.tar.gzархива с логами и перенос на удалённый сервер:
tar -czvf logs.tar.gz /var/log/nginx/
scp logs.tar.gz user@remote:/home/user/backups/
- Извлечение архива на удалённом сервере:
ssh user@remote "tar -xzvf /home/user/backups/logs.tar.gz -C /home/user/restored_logs/"
- Извлечение RAR архива после скачивания:
wget http://example.com/files/archive.rar
unrar x archive.rar
- Архивирование и сжатие нескольких директорий:
tar -czvf project_backup.tar.gz /home/user/project1 /home/user/project2
⚡ Резюме
| Утилита | Форматы | Основное назначение |
|---|---|---|
tar |
.tar, .tar.gz, .tar.bz2 |
Архивирование директорий и файлов |
gzip/gunzip |
.gz |
Сжатие отдельных файлов |
unrar |
.rar |
Извлечение RAR архивов |
[!TIP] Для ежедневного резервного копирования используйте
tar + gzipилиtar + bzip2. Для редких RAR-файлов используйтеunrar.