Create file tar gz linux

Содержание
  1. Как создать архив tar.gz в любой версии линукс
  2. Как создать архив .tar.gz
  3. Как открыть (распаковать) .tar
  4. Команда Tar в Linux. Cоздание и распаковка архивов
  5. Tar Command in Linux (Create and Extract Archives)
  6. В этом руководстве мы покажем вам, как использовать tar команду для извлечения, просмотра и создания архивов tar на практических примерах и подробных объяснениях наиболее распространенных параметров tar.
  7. Синтаксис команды Tar
  8. Создание Tar Архив
  9. Создание архива Tar Gz
  10. Создание архива Tar Bz2
  11. Листинг Тар Архивы
  12. Извлечение Тар Архив
  13. Извлечение архива Tar в другой каталог
  14. Извлечение архивов Tar Gz и Tar Bz2
  15. Извлечение определенных файлов из архива Tar
  16. Извлечение файлов из архива Tar с использованием подстановочного знака
  17. Добавление файлов в существующий архив Tar
  18. Удаление файлов из архива Tar
  19. Вывод
  20. Как создать файл Tar Gz
  21. Создание файла tar.gz
  22. Примеры
  23. Выводы
  24. How to tar a file in Linux using command line
  25. How to tar a file in Linux using command line
  26. How to create tar a file in Linux
  27. How to exclude directories and files when using tar
  28. How do I view files stored in an archive?
  29. How do I extracting an archive?
  30. Conclusion
  31. Архивирование файлов в Linux
  32. Архивирование в Linux
  33. Сжатие архивов в Linux
  34. Выводы

Как создать архив tar.gz в любой версии линукс

Формат архива tar.gz является стандартом для linux систем и используется повсеместно в качестве архивов, репозиториев и установочных модулей.

В некоторых случаях есть необходимость самостоятельно создать архив этого формата.

Как создать архив .tar.gz

Сама команда tar ничего не компрессирует а всего лишь «сливает» файлы и/или директории в один общий файл. Последующая компрессия выполняется посредством архиватора gzip .

Ниже приведены основные примеры использования команды tar :

tar -cvf file.tar /full/path — создать .tar
tar -czvf file.tar.gz /full/path — создать .tar.gz (архив)

Синтаксис для работы с командой tar:

tar [-ключи] [название архива] [путь, что запаковать]

  • с = «create» : создать файл архива
  • v = «verbose» : выводить информацию в процессе выполнения
  • f = «file» : использовать имя файла архива указаное после ключей. Если не указать ключ f то команда будет использовать настройки по умолчанию либо выведет результат прямо в консоль
  • z = «gzip» : запаковать файл при помощи gzip

Как открыть (распаковать) .tar

Чтобы распаковать запаковыный .tar.gz:

tar -xvf file.tar.gz

tar [-ключи] [название архива]

  • x = «eXtract» : извлечь файлы
  • v = «verbose» : выводить информацию в процессе выполнения
  • f = «file» : использовать имя файла архива для распаковки указаное после ключей

Источник

Команда Tar в Linux. Cоздание и распаковка архивов

Tar Command in Linux (Create and Extract Archives)

В этом руководстве мы покажем вам, как использовать tar команду для извлечения, просмотра и создания архивов tar на практических примерах и подробных объяснениях наиболее распространенных параметров tar.

Команда tar используется для создания архивов tar путем преобразования группы файлов в архив. Он также имеет возможность извлекать архивы tar, отображать список файлов, включенных в архив, добавлять дополнительные файлы в существующий архив, а также выполнять различные другие операции.

Изначально Tar был предназначен для создания архивов для хранения файлов на магнитной ленте, поэтому он имеет название « T ape AR chive».

Синтаксис команды Tar

Существует две версии tar, BSD tar и GNU tar с некоторыми функциональными различиями. Большинство систем Linux поставляются с GNU tar, предварительно установленным по умолчанию.

Общий синтаксис tar команды выглядит следующим образом:

  • OPERATION — Допускается и требуется только один аргумент операции. Наиболее часто используемые операции:
    • —create ( -c ) — Создать новый архив tar.
    • —extract ( -x ) — Извлечение всего архива или одного или нескольких файлов из архива.
    • —list ( -t ) — Показать список файлов, включенных в архив
  • OPTIONS — Наиболее часто используемые операции:
    • —verbose ( -v ) — Показать файлы, обрабатываемые командой tar.
    • —file=archive=name ( -f archive-name ) — указывает имя файла архива.
  • ARCHIVE_NAME — название архива.
  • FILE_NAME(s) — Разделенный пробелами список имен файлов для извлечения из архива. Если не предоставлено, весь архив извлекается.

При выполнении команд tar вы можете использовать длинную или короткую форму tar операций и опций. Длинные формы более читабельны, а короткие — быстрее набираются. Параметры длинной формы начинаются с двойной черты ( — ). Параметры краткой формы имеют префикс с одной чертой ( — ), который может быть опущен.

Создание Tar Архив

Для создания архива tar используйте -c опцию -f и имя архива.

Например, чтобы создать архив с именем archive.tar из файлов с именами file1 , file2 , file3 вы бы выполнить следующую команду:

Вот эквивалентная команда, использующая параметры длинной формы:

Вы можете создавать архивы из содержимого одного или нескольких каталогов или файлов. По умолчанию каталоги архивируются рекурсивно, если —no-recursion не указан параметр.

В следующем примере создается архив с именем user_backup.tar в /home/user каталоге:

Используйте эту -v опцию, если вы хотите увидеть файлы, которые обрабатываются.

Создание архива Tar Gz

Gzip — самый популярный алгоритм сжатия tar-файлов. При сжатии архивов tar с помощью gzip имя архива должно заканчиваться либо либо, tar.gz либо tgz .

-z Опция сообщает деготь сжать архив , используя gzip алгоритм , как он будет создан. Например, чтобы создать архив tar.gz из заданных файлов, вы должны использовать следующую команду:

Создание архива Tar Bz2

Другой популярный алгоритм для сжатия tar-файлов — это bzip2. При сжатии архивов tar с помощью bzip2 имя архива должно заканчиваться либо либо, tar.bz2 либо tbz .

Когда -j опция указана, tar будет использовать bzip2 алгоритм для сжатия архива. Следующая команда создаст tar.bz2 архив из заданных файлов:

Листинг Тар Архивы

При использовании с параметром —list ( -t ) tar команда выведет список содержимого архива tar без его извлечения. Команда ниже, выведет список содержимого archive.tar файла:

Читайте также:  Управление линукс по wifi

В выводе будут перечислены имена всех файлов в архиве:

Для получения дополнительной информации, такой как владелец файла, размер файла, отметка времени, используйте параметр —verbose ( -v ):

Извлечение Тар Архив

Большинство архивных файлов в Linux архивируются и сжимаются в формате tar или tar.gz. Очень важно знать, как извлечь эти файлы из командной строки.

Чтобы извлечь архив tar, используйте параметр —extract ( -x ), за которым следует имя архива:

Также распространено добавлять -v опцию для печати имен извлекаемых файлов.

Извлечение архива Tar в другой каталог

По умолчанию tar извлекает содержимое архива в текущем рабочем каталоге . Используйте —directory ( -C ) для извлечения архивных файлов в определенном каталоге:

Например, чтобы извлечь содержимое архива в /opt/files каталог, вы можете использовать:

Извлечение архивов Tar Gz и Tar Bz2

При извлечении сжатых архивов, таких как tar.gz или tar.bz2 вам не нужно указывать опцию распаковки. Команда такая же, как при извлечении tar архива:

Извлечение определенных файлов из архива Tar

Иногда вместо того, чтобы извлечь весь архив, вам может потребоваться извлечь из него только несколько файлов.

Чтобы извлечь конкретные файлы из архива tar, добавьте разделенный пробелами список имен файлов, которые нужно извлечь после имени архива:

При извлечении файлов вы должны указать их точные имена, включая путь, как указано в —list ( -t ).

Извлечение одного или нескольких каталогов из архива аналогично извлечению файлов:

Если вы попытаетесь извлечь файл, который не существует, появится сообщение об ошибке, подобное следующему:

Извлечение файлов из архива Tar с использованием подстановочного знака

Чтобы извлечь файлы из архива на основе шаблона с подстановочными знаками, используйте —wildcards переключатель и заключите шаблон в кавычки, чтобы оболочка не интерпретировала его.

Например, чтобы извлечь файлы, имена которых оканчиваются на .js (файлы Javascript), вы можете использовать:

Добавление файлов в существующий архив Tar

Чтобы добавить файлы или каталоги в существующий архив tar, используйте операцию —append ( -r ).

Например, чтобы добавить файл с именем newfile в archive.tar, вы должны выполнить:

Удаление файлов из архива Tar

Используйте —delete операцию для удаления файлов из архива.

В следующем примере показано, как удалить файл file1 из archive.tar,:

Вывод

Наиболее распространенное использование этой tar команды — создание и извлечение архива tar. При извлечении архива используйте tar -xf команду, за которой следует имя архива, и для создания нового используйте tar -czf команду, за которой следуют имя архива и файлы и каталоги, которые вы хотите добавить в архив.

Источник

Как создать файл Tar Gz

Архив tar — это файл, в котором хранится набор других файлов, включая информацию о них, такую как право собственности, разрешения и временная метка.

В операционных системах Linux вы можете использовать команду tar для создания архивов tar. Команда также может сжимать архивы, используя широкий спектр программ сжатия. Самый популярный алгоритм — gzip.

По соглашению имя tar-архива, сжатого с помощью gzip, должно заканчиваться на .tar.gz или .tgz .

В этой статье описывается, как создавать файлы tar.gz.

Создание файла tar.gz

Большинство дистрибутивов Linux включают GNU-версию tar которая поддерживает сжатие архивов.

Общая форма команды для создания файлов tar.gz следующая:

Вот что означают параметры команды:

  • -c — указывает tar создать новый архив.
  • -z — устанавливает метод сжатия gzip.
  • -f archive-name.tar.gz — указывает имя архива.
  • file-name. разделенный пробелами список файлов и каталогов, которые нужно добавить в архив.

Пользователь, выполняющий команду, должен иметь права на запись в каталог, в котором будет создан файл tar.gz, и права на чтение для добавляемых файлов.

Например, чтобы создать архив с именем «archive.tar.gz» из «файл1» и «файл2», вы должны использовать следующую команду:

В случае успеха команда не выводит никаких результатов. Чтобы убедиться, что архив создан, укажите содержимое каталога с помощью ls .

Если вы хотите создать tar.gz в определенном каталоге, укажите полный путь к файлу архива:

Вы можете создавать файлы tar.gz из содержимого одного или нескольких каталогов или файлов. По умолчанию каталоги архивируются рекурсивно, если не указана опция —no-recursion .

В следующем примере показано, как создать архив с именем «web_backup.tar.gz» в каталоге /var/www/website :

Если вы используете систему с более старой версией tar , которая не поддерживает сжатие, вы можете использовать команду gzip :

В приведенном выше примере команда tar выводит архив на стандартный вывод (обозначенный знаком — ). Архив передается по конвейеру в gzip , который сжимает и записывает архив на диск.

Примеры

Создайте файл tar.gz из всех файлов «.jpg»:

Подстановочный знак ( * ) означает все файлы с расширением «.jpg».

Создайте файл tar.gz, передайте его по ssh и распакуйте на удаленном компьютере:

Выводы

Файл tar.gz представляет собой архив Tar, сжатый с помощью Gzip. Чтобы создать файл tar.gz, используйте команду tar -czf , после которой tar -czf имя архива и файлы, которые вы хотите добавить.

Если у вас есть вопросы, оставьте комментарий ниже.

Источник

How to tar a file in Linux using command line

How to tar a file in Linux using command line

The procedure is as follows to tar a file in Linux:

  1. Open the terminal app in Linux
  2. Compress an entire directory by running tar -zcvf file.tar.gz /path/to/dir/ command in Linux
  3. Compress a single file by running tar -zcvf file.tar.gz /path/to/filename command in Linux
  4. Compress multiple directories file by running tar -zcvf file.tar.gz dir1 dir2 dir3 command in Linux
Читайте также:  Linux kernel and initrd

How to create tar a file in Linux

Say you want to compress an entire directory named /home/vivek/data/:
$ tar -czvf file.tar.gz /home/vivek/data/
To compress multiple directories and files, execute:
$ tar -czvf file.tar.gz /home/vivek/data/ /home/vivek/pics/ /home/vivek/.accounting.db
One can use bzip2 compression instead of gzip by passing the -j option to the tar command:
$ tar -c j vf file.tar. bz2 /home/vivek/data/
Where,

  • -c : Create a new archive
  • -v : Verbose output
  • -f file.tar.gz : Use archive file
  • -z : Filter the archive through gzip
  • -j : Filter the archive through bzip2

How to exclude directories and files when using tar

You can exclude certain files when creating a tarball. The syntax is:
$ tar -zcvf archive.tar.gz —exclude=’dir1′ —exclude=’regex’ dir1
For example, exclude

/Downloads/ directory:
$ tar -czvf /nfs/backup.tar.gz —exclude=»Downloads» /home/vivek/

  • No ads and tracking
  • In-depth guides for developers and sysadmins at Opensourceflare✨
  • Join my Patreon to support independent content creators and start reading latest guides:
    • How to set up Redis sentinel cluster on Ubuntu or Debian Linux
    • How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
    • How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
    • A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
    • How to protect Linux against rogue USB devices using USBGuard

Join Patreon

How do I view files stored in an archive?

Now you have an archive, to list the contents of a tar or tar.gz file using the tar command:
$ tar -ztvf file.tar.gz
$ tar -jtvf file.tar.bz2

How do I extracting an archive?

You can extract an archive or tarball with the tar command. The syntax is:
$ tar -xzvf file.tar.gz
$ tar -xjvf file.tar.bz2
Want to extract the contents of the archive into a specific directory such as /home/vivek/backups/? Try passing the -C DIR option:
$ tar -xzvf my.tar.gz -C /home/vivek/backups/
$ tar -xjvf archive.tar.bz2 -C /tmp/

  • -x : Extract files from an archive
  • -t : List the contents of an archive
  • -v : Verbose output
  • -f file.tar.gz : Use archive file
  • -C DIR : Change to DIR before performing any operations
  • —exclude : Exclude files matching PATTERN/DIR/FILENAME

Conclusion

You learned how to tar a file in Linux using tar command. For more info please tar command help page here.

🐧 Get the latest tutorials on Linux, Open Source & DevOps via

Источник

Архивирование файлов в Linux

В наши дни мы сталкиваемся с файлами архивов очень часто и на всех платформах: Windows, Mac или Linux. Это могут быть программы, резервные копии систем или баз данных или просто архив файлов. Нам также часто приходится создавать свои архивы в Linux, чтобы передать несколько файлов друзьям или загрузить на файлообменник. В виде архивов распространяются пакеты программ, исходные коды, а также много других файлов, распространяемых на просторах интернета. Научиться выполнять архивирование файлов в Linux через терминал очень важно, возможно это вам понадобиться, когда не будет доступа к графическому интерфейсу, или просто со временем в терминале станет более приятно работать.

В этой инструкции я хочу подробно рассмотреть утилиты для архивирования в Linux, мы рассмотрим не только самую популярную и универсальную утилиту — tar, но и другие менее известные, а также популярные алгоритмы сжатия.

Архивирование в Linux

Важно отметить, что архивирование в linux это не одно и то же что и сжатие файлов linux. Архивирование — это объединение нескольких небольших файлов в один, с целю более удобной последующей передачи, хранения, шифрования или сжатия. Как я уже сказал, архивация выполняется специальными утилитами. Мы не будем трогать архивацию файлов в графическом интерфейсе, вы с ними разберетесь сами, наша тема — терминал.

Самой популярной для Linux утилитой для архивации есть tar. Она используется почти везде, для архивации исходников, упаковки пакетов. Для сжатия используются другие утилиты, в зависимости от алгоритма сжатия, например, zip, bz, xz, lzma и т д. Сначала выполняется архивация, затем сжатие, отдельными программами. Автоматический запуск некоторых утилит сжатия для только что созданного архива поддерживается в tar и других подобных программах с помощью специальных опций.

Также полезной возможностью архивации есть шифрование. Но теперь давайте рассмотрим какие существуют утилиты, с помощью которых выполняется архивирование файлов linux и как ими пользоваться.

Tar — это стандартная утилита, с помощью которой выполняется архивирование файлов Linux. Постепенно из небольшой программы архивации она превратилась в мощный инструмент, поддерживающий работу со многими вариантами архивов и алгоритмами сжатия. Программа поддерживает большое количество параметров. Давайте рассмотрим ее синтаксис и основные параметры:

$ tar опции f файл_для_записи /папка_файлами_для_архива

А теперь разберем основные опции:

  • A — добавить файл к архиву
  • c — создать архив в linux
  • d — сравнить файлы архива и распакованные файлы в файловой системе
  • j — сжать архив с помощью Bzip
  • z — сжать архив с помощью Gzip
  • r — добавить файлы в конец архива
  • t — показать содержимое архива
  • u — обновить архив относительно файловой системы
  • x — извлечь файлы из архива
  • v — показать подробную информацию о процессе работы
  • f — файл для записи архива
  • -C — распаковать в указанную папку
  • —strip-components — отбросить n вложенных папок

Теперь давайте рассмотрим архивирование файлов в Linux. Чтобы создать архив используйте такую команду:

tar -cvf archive.tar.gz /path/to/files

А чтобы распаковать архив tar linux:

tar -xvf archive.tar.gz

Очень просто запомнить для упаковки используется опция cCreate, а для распаковки — x — eXtract.

Читайте также:  Драйвер для принтера epson l355 для windows 10

Сжатый архив создается точно так же, только с опцией -z, это в случае, если использовалось шифрование gizp, если нужно bzip то применяется опция -j:

tar -zcvf archive.tar.gz /path/to/files

$ tar -zxvf archive.tar.gz

Например, рассмотрим как заархивировать папку в Linux:

tar -zcvf home.tar.gz

Хотя можно поступить по-другому, тот же архив мы получим если сначала создать обычный архив с помощью tar, а потом сжать его утилитой для сжатия, только здесь мы получаем больше контроля над процессом сжатия:

Также можно убрать сжатие:

Утилиты сжатия мы рассмотрим ниже.

Чтобы добавить файл в архив используйте:

tar -rvf archive.tar file.txt

Для извлечения одного файла синтаксис тот же:

tar -xvf archive.tar file.txt

Можно извлечь несколько файлов по шаблону соответствия с помощью параметра wildcard, например, извлечем все php файлы:

tar -xvf archive.tar —wildcards ‘*.php’

По умолчанию распаковать архив tar linux можно в текущую папку с именем архива, чтобы распаковать в нужную папку используйте ключ -C:

tar -xvf archive.tar -C /path/to/dir

Стандартную утилиту рассмотрели, теперь кратко рассмотрим ее альтернативы. Их не так много, и большинство из них уже устаревшие.

Shar позволяет создавать самораспаковывающиеся архивы. По сути, это скрипт оболочки, и для распаковки ему необходима оболочка Bash или другая совместимая с Bourne Shell. У Shar есть несколько преимуществ, но также он потенциально небезопасный, так как архив представляет собой исполняемый файл.

  • -o — сохранять архив в файл вместо стандартного вывода
  • -l — ограничить размер выходного файла
  • -L — ограничить размер выходного файла и разбить его на части
  • -n — имя архива не будет включено в заголовок
  • -a — разрешить автоматическую генерацию заголовков

Примеры использования shar для того чтобы заархивировать папку linux:

Создаем shar архив:

shar file_name.extension > filename.shar

Распаковываем shar архив:

ar — утилита для создания и управления архивами. В основном используется для архивации статических библиотек, но может быть использована для создания любых архивов. Раньше использовалась довольно часто но была вытеснена утилитой tar. Сейчас используется только для создания и обновления файлов статических библиотек.

  • — d — удалить модули из архива
  • — m — перемещение членов в архиве
  • — p — напечатать специфические члены архива
  • — q — быстрое добавление
  • — r — добавить члена к архиву
  • — s — создать индекс архива
  • — a — добавить новый файл к существующему архиву

Теперь рассмотрим примеры использования. Создадим статическую библиотеку libmath.a из объектных файлов substraction.o и division.o:

ar cr libmath.a substraction.o division.o

Теперь извлечем файлы из архива:

Таким образом, можно распаковать любую статическую библиотеку.

cpio — означает Copy in and out (скопировать ввод и вывод). Это еще один стандартный архиватор для Linux. Активно используется в менеджере пакетов Red Hat, а также для создания initramfs. Архивация в Linux для обычных файлов с помощью этой программы не применяется.

  • -a — сбросить время обращения к файлам после их копирования
  • -A — добавить файл
  • -d — создать каталоги при необходимости

Пример использования. Создаем cpio архив:

file1.o file2.o file3.o

ls | cpio -ov > /path/to/output_folder/obj.cpio

Архивирование папки linux выполняется также само.

Сжатие архивов в Linux

Как создать архив в linux рассмотрели. Теперь давайте поговорим о сжатии. Как я говорил, для сжатия используются специальные утилиты. Рассмотрим кратко несколько из них

Чаще всего применяется Gzip. Это стандартная утилита сжатия в Unix/Linux. Для декомпрессии используется gunzip или gzip -d Сначала рассмотрим ее синтаксис:

$ gzip опции файл

$ gunzip опции файл

Теперь разберем опции:

  • -c — выводить архив в стандартный вывод
  • -d — распаковать
  • -f — принудительно распаковывать или сжимать
  • -l — показать информацию об архиве
  • -r — рекурсивно перебирать каталоги
  • -0 — минимальный уровень сжатия
  • -9 — максимальный уровень сжатия

Примеры использования вы уже видели в описании утилиты tar. Например, выполним сжатие файла:

gzip -c файл > архив.gz

А теперь распакуем:

gunzip -c архив.gz

Но чтобы сжать папку в Linux вам придется сначала заархивировать ее с помощью tar, а уже потом сжать файл архива с помощью gzip.

bzip2 — еще одна альтернативная утилита сжатия для Linux. Она более эффективная чем gzip, но работает медленнее. Для распаковки используйте утилиту bunzip2.

Описывать опции bzip2 я не буду, они аналогичны gzip. Чтобы создать архив в Linux используйте:

В текущем каталоге будет создан файл file.bz2

Новый и высокоэффективный алгоритм сжатия. Синтаксис и опции тоже похожи на Gzip. Для распаковки используйте unlzma.

Еще один высокоэффективный алгоритм сжатия. Обратно совместимый с Lzma. Параметры вызова тоже похожи на Gzip.

Кроссплатформенная утилита для создания сжатых архивов формата zip. Совместимая с Windows реализациями этого алгоритма. Zip архивы очень часто используются для обмена файлами в интернете. С помощью этой утилиты можно сжимать как файлы, так и сжать папку linux.

$ zip опции файлы

$ unzip опции архив

  • -d удалить файл из архива
  • -r — рекурсивно обходить каталоги
  • -0 — только архивировать, без сжатия
  • -9 — наилучший степень сжатия
  • -F — исправить zip файл
  • -e — шифровать файлы

Чтобы создать Zip архив в Linux используйте:

zip -r /path/to/files/*

А для распаковки:

Как видите архивирование zip в Linux не сильно отличается от других форматов.

Выводы

Теперь вы знаете все что нужно об архивации файлов в Linux. Мы рассмотрели только консольные команды, так сказать, чтобы была понятна суть. В графическом интерфейсе все еще проще. Если остались вопросы — задавайте их в комментариях.

Источник

Оцените статью