- Как заархивировать файлы и каталоги в Linux
- zip Команда
- Установите Zip в Ubuntu и Debian
- Установите Zip на CentOS и Fedora
- Как архивировать файлы и каталоги
- Методы и уровни сжатия
- Создание ZIP-файла, защищенного паролем
- Создание разделенного Zip-файла
- Примеры ZIP
- Выводы
- Команда tar и zip в Linux
- Архивация Tar в Linux
- Создание архива TAR
- Распаковать архив TAR
- Общая информация по работе с Tar
- Архивация Zip в Linux
- Создание ZIP архива
- Распаковать zip архив
- Как архивировать файлы в Linux [tar]
- Архивирование файлов и папок с помощью tar
- Краткий список команд
- Создание нового архива
- Извлечение архива
- Создание архива в формате GZIP и BZIP
- Создание архива из нескольких каталогов или файлов одновременно
- Исключить каталоги или файлы при создании архива
- Список содержимого архива без извлечения
- Добавление файлов в существующий архив
Как заархивировать файлы и каталоги в Linux
Zip — это наиболее широко используемый формат архивных файлов, поддерживающий сжатие данных без потерь.
Zip-файл — это контейнер данных, содержащий один или несколько сжатых файлов или каталогов. Сжатые (заархивированные) файлы занимают меньше места на диске, их можно перенести с одного компьютера на другой быстрее, чем несжатые файлы. Zip-файлы можно легко извлечь в Windows, macOS и Linux с помощью утилит, доступных для всех операционных систем.
В этом руководстве мы покажем вам, как архивировать (сжимать) файлы и каталоги в Linux с помощью команды zip .
zip Команда
zip — это утилита командной строки, которая помогает создавать Zip-архивы.
Команда zip имеет следующий синтаксис:
Чтобы создать Zip-архив в определенном каталоге, пользователю необходимо иметь права на запись в этот каталог.
Zip-файлы не поддерживают информацию о владельце в стиле Linux. Извлеченные файлы принадлежат пользователю, выполняющему команду.
Чтобы сохранить право собственности на файл и права доступа, используйте команду tar .
Утилита zip не устанавливается по умолчанию в большинстве дистрибутивов Linux, но вы можете легко установить ее с помощью диспетчера пакетов вашего дистрибутива.
Установите Zip в Ubuntu и Debian
Установите Zip на CentOS и Fedora
Как архивировать файлы и каталоги
Чтобы заархивировать один или несколько файлов, укажите файлы, которые вы хотите добавить в архив, через пробел, как показано ниже:
По умолчанию команда zip печатает имена файлов, добавленных в архив, и метод сжатия. Мы объясним методы и уровень сжатия позже в этом руководстве.
При указании имени архива Zip, если вы опускаете расширение .zip оно будет добавлено автоматически, если имя архива не содержит точки. zip archivename.zip filename создаст архив с тем же именем, что и zip archivename filename .
Чтобы подавить вывод команды zip , используйте параметр -q :
Часто вы создаете Zip-архив каталога, включающего содержимое подкаталогов. Параметр -r позволяет рекурсивно просматривать всю структуру каталогов.
Чтобы создать Zip-архив каталога, вы должны использовать:
Вы также можете добавить несколько файлов и каталогов в один архив:
Методы и уровни сжатия
Метод сжатия Zip по умолчанию — deflate . Если утилита zip определяет, что файл нельзя сжать, она просто сохраняет файл в архиве, не сжимая его с помощью метода store . В большинстве дистрибутивов Linux утилита zip также поддерживает метод сжатия bzip2 .
Чтобы указать метод сжатия, используйте параметр -Z .
Команда zip позволяет указать уровень сжатия с помощью числа с префиксом от 0 до 9. Уровень сжатия по умолчанию -6 . При использовании -0 все файлы будут сохраняться без сжатия. -9 заставит команду zip использовать оптимальное сжатие для всех файлов.
Например, чтобы использовать уровень сжатия -9 , введите что-то вроде этого:
Чем выше уровень сжатия, тем интенсивнее процесс архивирования, и для его завершения потребуется больше времени.
Создание ZIP-файла, защищенного паролем
Если у вас есть конфиденциальная информация, которую необходимо сохранить в архиве, вы можете зашифровать ее с помощью параметра -e :
Вам будет предложено ввести и подтвердить пароль архива:
Создание разделенного Zip-файла
Представьте, что вы хотите сохранить Zip-архив на сервисе хостинга файлов, который имеет ограничение на размер загружаемого файла 1 ГБ, а ваш Zip-архив — 5 ГБ.
Вы можете создать новый разделенный Zip-файл, используя параметр -s с указанием размера. Множитель может быть k (килобайты), m (мегабайты), g (гигабайты) или t (терабайты).
Приведенная выше команда продолжит создание новых архивов в наборе после достижения указанного предельного размера.
Примеры ZIP
Создайте Zip-архив с именем archivename.zip, содержащий все файлы в текущем каталоге.
То же, что и выше, включая скрытые файлы (файлы, начинающиеся с точки):
Создайте Zip-архив с именем archivename.zip содержащий все файлы MP3 в текущем каталоге, без сжатия файлов.
Выводы
В Linux вы можете создавать Zip-архивы с помощью команды zip .
Чтобы распаковать ZIP-архив в системе Linux, вы можете использовать команду unzip .
Если вы хотите узнать больше о Zip, посетите страницу Zip Man .
Источник
Команда tar и zip в Linux
Нет ничего лучше для запоминания информации, чем чтение, а потом написание этой информации в тетрадь, вот и я люблю прочитать и записать информацию в свою тетрадь nibbl.ru
Сегодня речь пойдет о такой вещи как архивация, а именно упаковка и распаковка таких форматов как: tar, gzip, zip и rar в в операционных системах Unix и Linux
нашу статью разобьем на разделы, что бы была удобная навигация.
Архивация в Linux
Linux или Линукс сейчас самая популярная система не только для системный администраторов, но уже и для большинства рядовых граждан, а причина банальна — уход от Микрософта на государственном уровне и повсеместное внедрение «свободного ПО российской разработки», но как бы не называли ее мы все понимаем, что единственное свободное ПО которое может заменить для рядового пользователя операционную систему для работы в офисе это семейство Линуксовых. Поэтому как говорится уже можно начинать ее изучать всем повсеместно)))) но давайте не уходить от темы, а вернемся к нашим баранам!
Хоть Linux и имеет графическую оболочку и даже уже можно скачать графические пакеты для работы с самыми популярными расширениями архиваторов, мы будем рассматривать работу с архивами на уровне консоли (но если кому надо сделаем обзор пакетов для работы не через консоль)
Архивация Tar в Linux
Tar — или как мы его называли архиватором таковым не является, причина тому, логика работы данного инструмента! это всего лишь упаковщик, а если быть точнее то задача tar создать контейнер в формате tar в который она помещает выбранные вами файлы (без сжатия). Но если Вам нужно эти данные ужать или сжать для уменьшения размера архива, тогда применяются дополнительные инструменты такие как Gzip или bzip2 (вы должны были обращать внимания, что скачивая пакеты или файлы они имели странный формат name-file.tar.gz ) Все дело в том, что принцип работы инструмента по сжатию данных, работает только в однопотоковом режиме, поэтому, что бы заархивировать много файлов и их сжать нам необходимо было их упаковать в TAR (один файл), а только потом прогнать через сжатие Gzip или bzip2 поэтому эти инструменты работают как Бонни и Клайд)
Создание архива TAR
Для начала начнем с запаковки архива Tar в Linux/ubuntu, и для этого надо запомнить шаблон или синтаксис команды:
tar [опции] [файлы или папки которые будем упаковывать]
Опции для создания архива tar:
- c (create) — создать архив
- f (file) — указать имя архива
- j (bzip2) — cжать/распаковать архив дополнительно при помощи bzip2
- z (gzip) — сжать/распаковать архив дополнительно при помощи gzip
- v (verbose) — выводит список прогресса
Для создания архива tar нам необходимы только две опции c и f, но если вы хотите видеть процесс упаковки файлов, то можете добавить ключ v и тогда вы увидите на экране бегущий список файлов (так сказать «аналог» виндовому прогрессу в виде процентов)
tar -cvf newfile.tar /foto
в данной команде мы указали создать архив newfile.tar и запаковать всю папку foto
В списке опций вы заметили два ключа j и z эти ключи используются как для сжатия в архив gzip или bzip2 если вам нужно сделать архивацию с сжатием то применяем следующую команду:
tar -cvjf newfile.tar /foto — создаст архив + сжатие newfile.tar.bz2
tar -cvzf newfile.tar /foto — создаст архив + сжатие newfile.tar.gz
Распаковать архив TAR
рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив в linux/ubunta :
tar [опции] [файлы или папки которые будем распаковывать]
Опции для создания архива tar:
- x (extract) — извлечь файлы из архива
- f (file) — указать имя архива
- j (bzip2) — cжать/распаковать архив дополнительно при помощи bzip2
- z (gzip) — сжать/распаковать архив дополнительно при помощи gzip
- v (verbose) — выводит список прогресса
- С (в верхнем регистре) — указываем альтернативное место для разархивирования файлов
tar -xvjf newfile.tar.bz2 — распаковываем архив в категорию в которой находимся
tar -xvzf newfile.tar.gz -C /home/nibbl/desktop — распаковываем архив на рабочий стол
Общая информация по работе с Tar
- tar —help — вызов справки по командам и параметрам
- man tar — вызов расширенной документации
- официальная документация по команде tar — ссылка
Архивация Zip в Linux
Архиватор zip — это звезда в мире ПО (ну не считая rar) этот формат очень популярен для windows систем и он по умолчанию уже встроен в чистую сборку операционной системы, поэтому только установив виндовус вы уже можете разархивировать файлы в формате zip
но давайте перейдем к делу, в Linux и Unix системах дела обстоят по другому, это формат Tar идет по умолчанию, а вот для zip надо поставить пакет unzip
- sudo apt-get update && apt-get upgrade
- sudo apt-get install unzip
Создание ZIP архива
Для начала запомним шаблон или синтаксис команды для создания архива zip в linux:
zip [опции] [файлы или папки которые будем упаковывать]
Опции для создания архива tar:
- r (recurse) — рекурсивное создание архива
- s (size) — разбивка архива на определенный размер k (kB), m (MB), g (GB) или t (TB)
пример: zip -s 300m
на выходе получим:
file.zip (300 mb, master file)
file.001.zip (300 mb)
file.002.zip (300 mb)
file.003.zip (100 mb) - P (password) — запаролировать архив (можно использовать ключ e тогда пароль будете вводить в отдельной строке со звездочками )
пример: zip -P мойпароль -r file.zip ./home/nibbl/foto
пример2: zip -er file.zip ./home/nibbl/foto - x — исключаем файлы или каталоги из архива
- 1-9 — степень сжатия (где 1 без сжатия, а 9 лучшее сжатие)
zip –r -9 -P 123 — archive.zip /home/nibbl/desktop/myfile
— данной командой мы заархивировали с сжатием папку myfile создали архив с именем archive.zip и установили пароль на архив 123
Распаковать zip архив
рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив :
Опции для создания архива tar:
- d (directory) — указать директорию для разархивации
- l — вывести список файлов в архиве
- d — удалить определенный файл или каталог из уже сделанного архива
- v — показывает детальную информацию по файлам в архиве ()
unzip — распаковываем архив в категорию в которой находимся
unzip -d /home/nibbl/desktop — распаковываем архив на рабочий стол
Источник
Как архивировать файлы в Linux [tar]
В этой статье мы поговорим о том, как архивировать файлы и каталоги в Linux. Разве архивация и сжатие не одно и то же? Многие думают, что эти термины имеют одинаковое значение. Но они совершенно разные. Архивирование — это процесс объединения нескольких файлов и каталогов в один файл. А сжатие — это процесс уменьшения размера файлов или каталогов. Архивирование часто используется для резервного копирования системы или при перемещении данных. Надеюсь, теперь вы понимаете разницу между архивированием и сжатием. Давайте перейдем к теме.
Наиболее распространенные программы для архивирования файлов и каталогов:
Архивирование файлов и папок с помощью tar
Tar — это команда Unix, которая обозначает Tape Archive. Она используется для объединения или сжатия нескольких файлов в один файл. В утилите tar есть 4 основных режима работы.
- c — Создать архив из файлов или каталогов.
- x — Извлечь архив.
- r — Добавить файлы в конец архива.
- t — список содержимого архива.
Краткий список команд
Создание tar архивов:
- Простой tar архив: tar -cf archive.tar file1 file2 file3
- gzip tar архив: tar -czf archive.tgz file1 file2 file3
- bzip tar архив: tar -cjf archive.tbz file1 file2 file3
Извлечение tar архивов:
- Простой tar архив: tar -xf archive.tar
- gzip tar архив: tar -xzf archive.tgz
- bzip tar архив: tar -xjf archive.tbz
Создание нового архива
Для целей данной статьи я буду использовать папку с именем mordeniuss, которая содержит файлы трех разных типов.
Теперь давайте создадим новый tar-архив каталога mordeniuss.
Здесь флаг c обозначает создание нового архива, а f — имя файла.
Аналогично, чтобы создать архив из набора файлов в текущем рабочем каталоге, используйте эту команду:
Извлечение архива
Чтобы извлечь архив в текущем каталоге, просто выполните:
Мы также можем извлечь архив в другой каталог, используя флаг -C. Например, следующая команда извлекает данный архивный файл в каталог загрузок.
Или перейдите в папку Downloads и распакуйте архив внутри нее, как показано ниже.
Также вы можете извлечь файлы только определенного типа. Например, следующая команда извлекает файлы типа «.png».
Создание архива в формате GZIP и BZIP
По умолчанию Tar создает архивный файл с расширением .tar. Кроме того, команда tar может использоваться в сочетании с утилитами сжатия gzip и bzip2. Файлы оканчиваются расширениями .tar, ссылаются на обычный архив tar, файлы оканчиваются на tar.gz или .tgz, обозначает архив gzip, а файлы tar заканчиваются на tar.bz2 или .tbz — архив bzip, соответственно.
Во-первых, давайте создадим сжатый архив:
Здесь мы используем флаг z для сжатия архива методом сжатия gzip.
Вы можете использовать флаг v для просмотра прогресса при создании архива.
Чтобы создать сжатый архив из списка файлов:
Чтобы распаковать архив в текущем каталоге, используйте:
Чтобы извлечь архив в другую папку, используйте флаг -C
Давайте создадим архив bzip. Для этого используйте флаг j, как показано ниже.
Создание архива из списка файлов:
Распакуем архив в текущем каталоге. Для этого используем:
Для извлечения в другой каталог:
Создание архива из нескольких каталогов или файлов одновременно
Это еще одна крутая особенность команды tar. Чтобы создать сжатый архив из нескольких каталогов или файлов одновременно, используйте эту команду:
Приведенная выше команда создаст архив из папок Downloads, Documents и файла file.odt в каталоге mordeniuss и сохранит архив в текущем рабочем каталоге.
Исключить каталоги или файлы при создании архива
Это очень полезно при резервном копировании ваших данных. Вы можете исключить несущественные файлы или каталоги из вашей копии. Тут потребуется ключ -exclude. Например, вы хотите создать архив вашей домашней директории, но исключить загрузки, документы, изображения, музыку.
Выглядит это так:
Приведенная выше команда создаст сжатый архив моего каталога $HOME, исключая папки Downloads, Documents, Pictures и Music. Чтобы создать архив bzip, замените z на j и используйте расширение .tbz в примере.
Список содержимого архива без извлечения
Чтобы просмотреть содержимое, используйте флаг t.
Чтобы просмотреть подробный вывод, используйте флаг v.
Добавление файлов в существующий архив
Файлы или каталоги могут быть добавлены / обновлены в существующие архивы с помощью флага r. Посмотрите на следующую команду.
Приведенная выше команда добавит каталог sk и файл example.txt в архив mordeniuss.tar.
Вы можете проверить, добавлены ли файлы или нет, используя команду:
Источник