В операционных системах Linux важно различать два смежных, но разных понятия: архивация и сжатие.
Архивация — это процесс объединения нескольких файлов и целых каталогов в один выходной файл (архив). Это устраняет издержки на работу с множеством мелких файлов и облегчает их передачу или резервное копирование.
Сжатие — это уменьшение физического размера файла путем удаления избыточной информации с помощью специальных математических алгоритмов.
По умолчанию стандартный архиватор Linux только собирает файлы вместе, но не сжимает их. Для сжатия используются дополнительные утилиты, которые работают в связке с архиватором,.
Основная утилита: tar
Традиционная программа для архивации в Linux называется tar (сокращение от tape archive — изначально она создавалась для записи потока файлов на магнитную ленту),. Утилита tar объединяет все нужные файлы в один файл (с расширением .tar), сохраняя при этом структуру каталогов и права доступа к файлам,,.
tar имеет три основных режима работы:
-c (create) — создание нового архива,.
-x (extract) — распаковка (извлечение) файлов из архива,.
-t (list) — просмотр списка файлов внутри архива без его распаковки,.
К этим режимам обычно добавляют вспомогательные флаги,,:
-f (file) — указывает, что результат нужно записать в файл с заданным именем (должен идти последним перед именем файла).
-v (verbose) — подробный вывод, показывает на экране имена обрабатываемых файлов в процессе работы.
Пример простой архивации (без сжатия):
Создать архив: tar -cvf archive.tar /home/user/docs,.
Распаковать архив: tar -xvf archive.tar,.
Архивация со сжатием (gzip и bzip2)
Чтобы созданный архив занимал меньше места на диске, tar используется совместно с программами для сжатия. Чаще всего применяются две утилиты:
gzip: Обеспечивает быстрое и эффективное сжатие. Для его вызова в команду tar добавляется опция -z,. Файлам принято давать расширение .tar.gz или сокращенно .tgz.
bzip2: Часто сжимает файлы сильнее, чем gzip, но работает медленнее. Вызывается опцией -j,. Файлы получают расширение .tar.bz2,.
Примеры архивации со сжатием:
Создать сжатый архив gzip: tar -czvf archive.tar.gz dir1.
Создать сжатый архив bzip2: tar -cjvf archive.tar.bz2 dir1,.
Извлечь файлы из сжатого архива: tar -xzvf archive.tar.gz,.
Просмотреть содержимое сжатого архива: tar -tf archive.tar.gz,.
Важно: При извлечении файлов с помощью tar -x, архиватор по умолчанию восстановит каталоги и файлы в ту директорию, в которой вы находитесь в данный момент.
Работа с ZIP-архивами
Формат ZIP является стандартом де-факто в системах Windows, но в Linux он также хорошо поддерживается отдельными командами zip и unzip,,. В отличие от tar, утилита zip выполняет и архивацию, и сжатие одновременно.
Создать zip-архив (ключ -r обязателен для рекурсивного добавления папок с их содержимым): zip -r archive.zip folder1 file1.txt,.
Просмотреть содержимое: unzip -l archive.zip.
Распаковать архив: unzip archive.zip,.
Автор: к.п.н., Румянцев Сергей Александрович, доцент Финансового университета при Правительстве РФ; доцент ОЧУВО Международного инновационного университета; Консалтинг, управление разработкой ПО; системный и бизнес анализ; менеджмент; аналитиз данных; управление ИТ. Телефон для связи +79269444818 (мессенджеры)
Короткая ссылка:
В операционных системах Linux важно различать два смежных, но разных понятия: архивация и сжатие.
Архивация — это процесс объединения нескольких файлов и целых каталогов в один выходной файл (архив). Это устраняет издержки на работу с множеством мелких файлов и облегчает их передачу или резервное копирование.
Сжатие — это уменьшение физического размера файла путем удаления избыточной информации с помощью специальных математических алгоритмов.
По умолчанию стандартный архиватор Linux только собирает файлы вместе, но не сжимает их. Для сжатия используются дополнительные утилиты, которые работают в связке с архиватором,.
Основная утилита: tar
Традиционная программа для архивации в Linux называется tar (сокращение от tape archive — изначально она создавалась для записи потока файлов на магнитную ленту),. Утилита tar объединяет все нужные файлы в один файл (с расширением .tar), сохраняя при этом структуру каталогов и права доступа к файлам,,.
tar имеет три основных режима работы:
-c (create) — создание нового архива,.
-x (extract) — распаковка (извлечение) файлов из архива,.
-t (list) — просмотр списка файлов внутри архива без его распаковки,.
К этим режимам обычно добавляют вспомогательные флаги,,:
-f (file) — указывает, что результат нужно записать в файл с заданным именем (должен идти последним перед именем файла).
-v (verbose) — подробный вывод, показывает на экране имена обрабатываемых файлов в процессе работы.
Пример простой архивации (без сжатия):
Создать архив: tar -cvf archive.tar /home/user/docs,.
Распаковать архив: tar -xvf archive.tar,.
Архивация со сжатием (gzip и bzip2)
Чтобы созданный архив занимал меньше места на диске, tar используется совместно с программами для сжатия. Чаще всего применяются две утилиты:
gzip: Обеспечивает быстрое и эффективное сжатие. Для его вызова в команду tar добавляется опция -z,. Файлам принято давать расширение .tar.gz или сокращенно .tgz.
bzip2: Часто сжимает файлы сильнее, чем gzip, но работает медленнее. Вызывается опцией -j,. Файлы получают расширение .tar.bz2,.
Примеры архивации со сжатием:
Создать сжатый архив gzip: tar -czvf archive.tar.gz dir1.
Создать сжатый архив bzip2: tar -cjvf archive.tar.bz2 dir1,.
Извлечь файлы из сжатого архива: tar -xzvf archive.tar.gz,.
Просмотреть содержимое сжатого архива: tar -tf archive.tar.gz,.
Важно: При извлечении файлов с помощью tar -x, архиватор по умолчанию восстановит каталоги и файлы в ту директорию, в которой вы находитесь в данный момент.
Работа с ZIP-архивами
Формат ZIP является стандартом де-факто в системах Windows, но в Linux он также хорошо поддерживается отдельными командами zip и unzip,,. В отличие от tar, утилита zip выполняет и архивацию, и сжатие одновременно.
Создать zip-архив (ключ -r обязателен для рекурсивного добавления папок с их содержимым): zip -r archive.zip folder1 file1.txt,.
В операционных системах Linux важно различать два смежных, но разных понятия: архивация и сжатие.
Архивация — это процесс объединения нескольких файлов и целых каталогов в один выходной файл (архив). Это устраняет издержки на работу с множеством мелких файлов и облегчает их передачу или резервное копирование.
Сжатие — это уменьшение физического размера файла путем удаления избыточной информации с помощью специальных математических алгоритмов.
По умолчанию стандартный архиватор Linux только собирает файлы вместе, но не сжимает их. Для сжатия используются дополнительные утилиты, которые работают в связке с архиватором,.
Основная утилита: tar
Традиционная программа для архивации в Linux называется tar (сокращение от tape archive — изначально она создавалась для записи потока файлов на магнитную ленту),. Утилита tar объединяет все нужные файлы в один файл (с расширением .tar), сохраняя при этом структуру каталогов и права доступа к файлам,,.
tar имеет три основных режима работы:
-c (create) — создание нового архива,.
-x (extract) — распаковка (извлечение) файлов из архива,.
-t (list) — просмотр списка файлов внутри архива без его распаковки,.
К этим режимам обычно добавляют вспомогательные флаги,,:
-f (file) — указывает, что результат нужно записать в файл с заданным именем (должен идти последним перед именем файла).
-v (verbose) — подробный вывод, показывает на экране имена обрабатываемых файлов в процессе работы.
Пример простой архивации (без сжатия):
Создать архив: tar -cvf archive.tar /home/user/docs,.
Распаковать архив: tar -xvf archive.tar,.
Архивация со сжатием (gzip и bzip2)
Чтобы созданный архив занимал меньше места на диске, tar используется совместно с программами для сжатия. Чаще всего применяются две утилиты:
gzip: Обеспечивает быстрое и эффективное сжатие. Для его вызова в команду tar добавляется опция -z,. Файлам принято давать расширение .tar.gz или сокращенно .tgz.
bzip2: Часто сжимает файлы сильнее, чем gzip, но работает медленнее. Вызывается опцией -j,. Файлы получают расширение .tar.bz2,.
Примеры архивации со сжатием:
Создать сжатый архив gzip: tar -czvf archive.tar.gz dir1.
Создать сжатый архив bzip2: tar -cjvf archive.tar.bz2 dir1,.
Извлечь файлы из сжатого архива: tar -xzvf archive.tar.gz,.
Просмотреть содержимое сжатого архива: tar -tf archive.tar.gz,.
Важно: При извлечении файлов с помощью tar -x, архиватор по умолчанию восстановит каталоги и файлы в ту директорию, в которой вы находитесь в данный момент.
Работа с ZIP-архивами
Формат ZIP является стандартом де-факто в системах Windows, но в Linux он также хорошо поддерживается отдельными командами zip и unzip,,. В отличие от tar, утилита zip выполняет и архивацию, и сжатие одновременно.
Создать zip-архив (ключ -r обязателен для рекурсивного добавления папок с их содержимым): zip -r archive.zip folder1 file1.txt,.