How to Create and Manage a .tar.bz2 File in Linux
The Linux operating system has transformed file archiving into a free, reputable, reliable, and secure file management process. By archiving your file(s) under a Linux operating system environment, you guarantee its integrity and security. Your files become free of compromise from both users and applications active in the system.
To create tar files on a Linux OS environment, we need to reference the usage of the tar command. In summary, the tar command can achieve the following objectives as a file archiving utility:
- Create tar files.
- Extract tar archives from existing/created tar files.
- List the content of an existing/created tar archive(s).
- Update existing/created tar archive with more files.
- Removing files from existing/created tar archive.
When you create a tar (Tape Archive) file from the Linux command line environment, you will either result in a tar file with the extension .tar.gz or .tar.bz2 . When compressing a tar file, the tool you use for the compression process determines the final tar file name.
For instance, Using GZIP compression tool results in a tar file name with the extension .tar.gz , and using the BZIP2 compression tool results in .tar.bz2 file name extension.
GZIP is faster than BZIP2 in its compression and decompression routines but BZIP2 leads to smaller compression (15% decrease in compression).
This article guide will walk us through creating and managing .tar.bz2 file archives on a Linux operating system environment.
Creating a tar.bz2 File in Linux
For this tutorial, we will need access to some reference files for archiving into a .tar.bz2 file archive.
The tar command general syntax is as follows:
$ tar [OPERATION_AND_OPTIONS] [ARCHIVE_NAME] [FILE_NAME(s)]
From the general tar syntax reference above, to create a .tar.bz2 file archive, an ideal syntax will look like the following:
$ tar -cjf ARCHIVE_NAME.tar.bz2 [FILE_NAMES]
The command option -c initiates the archive file creation process, -j specifies that the file archive should have a .tar.bz2b extension, and -f instructs the whole tar operation to use the device archive.
For instance, if we reference the above screen capture, the LinuxShellTips_Files directory hosts several files and folders. To archive the images directory together with the file_1.txt and file_2.txt files, our tar command will be as follows:
$ tar -cjf images_and_files.tar.bz2 /home/dnyce/LinuxShellTips_Files/images /home/dnyce/LinuxShellTips_Files/file_1.txt /home/dnyce/LinuxShellTips_Files/file_2.txt
To list the content present in this tar file, we will use the -t option and run:
$ tar -tf images_and_files.tar.bz2
For more details on the above output like file owner and file size, use -v (–verbose) option:
$ tar -tvf images_and_files.tar.bz2
To extract the archive file, include the -x option.
$ tar -xf images_and_files.tar.bz2
To extract the archive file to a specific directory, include the -C option and path to that directory.
$ tar -xf images_and_files.tar.bz2 -C /home/dnyce/linuxshelltips/decompressed
To add a file to the existing tar archive, use the -r option for —append operations.
$ tar -rvf images_and_files.tar.bz2 /home/dnyce/LinuxShellTips_Files/file_3.txt
We have successfully learned how to create and manage .tar.bz2 archive files in a Linux OS environment.
Команда tar в Linux
В качестве инструмента для архивации данных в Linux используются разные программы. Например архиватор Zip Linux, приобретший большую популярность из-за совместимости с ОС Windows. Но это не стандартная для системы программа. Поэтому хотелось бы осветить команду tar Linux — встроенный архиватор.
Изначально tar использовалась для архивации данных на ленточных устройствах. Но также она позволяет записывать вывод в файл, и этот способ стал широко применяться в Linux по своему назначению. Здесь будут рассмотрены самые распространенные варианты работы с этой утилитой.
Синтаксис команды tar
Синтаксис команд для создания и распаковки архива практически не отличается (в том числе с утилитами сжатия bzip2 или gzip). Так, чтобы создать новый архив, в терминале используется следующая конструкция:
tar опции архив.tar файлы_для_архивации
tar опции архив.tar
Функции, которые может выполнять команда:
Функция | Длинный формат | Описание |
---|---|---|
-A | —concatenate | Присоединить существующий архив к другому |
-c | —create | Создать новый архив |
-d | —diff —delete | Проверить различие между архивами Удалить из существующего архива файл |
-r | —append | Присоединить файлы к концу архива |
-t | —list | Сформировать список содержимого архива |
-u | —update | Обновить архив более новыми файлами с тем же именем |
-x | —extract | Извлечь файлы из архива |
При определении каждой функции используются параметры, которые регламентируют выполнение конкретных операций с tar-архивом:
Параметр | Длиннный формат | Описание |
---|---|---|
-C dir | —directory=DIR | Сменить директорию перед выполнением операции на dir |
-f file | —file | Вывести результат в файл (или на устройство) file |
-j | —bzip2 | Перенаправить вывод в команду bzip2 |
-p | —same-permissions | Сохранить все права доступа к файлу |
-v | —verbose | Выводить подробную информацию процесса |
—totals | Выводить итоговую информацию завершенного процесса | |
-z | —gzip | Перенаправить вывод в команду gzip |
А дальше рассмотрим примеры того, как может применяться команда tar Linux.
Как пользоваться tar
1. Создание архива tar
С помощью следующей команды создается архив archive.tar с подробным выводом информации, включающий файлы file1, file2 и file3:
tar —totals —create —verbose —file archive.tar file1 file2 file3
Но длинные опции и параметры можно заменить (при возможности) однобуквенными значениями:
tar —totals -cvf archive.tar file1 file2 file3
2. Просмотр содержимого архива
Следующая команда выводит содержимое архива, не распаковывая его:
3. Распаковка архива tar Linux
Распаковывает архив test.tar с выводом файлов на экран:
Чтобы сделать это в другой каталог, можно воспользоваться параметром -C:
tar -C «Test» -xvf archive.tar
3. Работа со сжатыми архивами
Следует помнить, что tar только создаёт архив, но не сжимает. Для этого используются упомянутые компрессорные утилиты bzip2 и gzip. Файлы, сжатые с их помощью, имеют соответствующие расширения .tar.bz2 и .tar.gz. Чтобы создать сжатый архив с помощью bzip2, введите:
tar -cjvf archive.tar.bz2 file1 file2 file3
Синтаксис для gzip отличается одной буквой в параметрах, и меняется окончание расширения архива:
tar -czvf archive.tar.gz file1 file2 file3
При распаковке tar-архивов с таким расширением следует указывать соответствующую опцию:
tar -C «Test» -xjvf arhive.tar.bz2
На заметку: архиватор tar — одна из немногих утилит в GNU/Linux, в которой перед использованием однобуквенных параметров, стоящих вместе, можно не ставить знак дефиса.
Выводы
В этой статье была рассмотрена команда tar Linux, которая используется для архивации файлов и поставляется по умолчанию во всех дистрибутивах. В её возможности входит создание и распаковка архива файлов без их сжатия. Для сжатия утилита применяется в связке с популярными компрессорами bzip2 и gzip.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Как заархивировать папку в Linux
wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 9 человек(а).
Количество просмотров этой статьи: 68 869.
Самый простой способ передать несколько файлов из Linux-системы — это заархивировать их с помощью команды tar (имейте в виду, что файлы в таком архиве не сжимаются). Если заархивировать папку (каталог), несколько файлов превратятся в один файл, который можно передать, сохранить или сжать, чтобы уменьшить его размер.
- Команда tar заархивирует, но не сожмет файлы. Поэтому размер архива будет равен суммарному размеру всех файлов, которые находятся в нем. Файл с расширением .tar можно сжать с помощью команды gzip или bzip2 , чтобы получить файл с расширением .tar.gz или .tar .bz2 . Процесс сжатия файла описан в конце этой статьи. [1] X Источник информации
Создайте архив из одной папки (каталога). Команда tar сопровождается рядом опций, когда архив создается из каталога. Далее приведен пример использования команды tar : [2] X Источник информации
tar -cvf Имя.tar /путь/к/каталогу
- tar — команда, которая запускает архиватор Tar.
- c — опция, которая отвечает за создание файла с расширением .tar. Эта опция всегда идет первой.
- v — опция, которая отвечает за вывод на экран подробной информации. То есть в процессе архивирования на экране будут отображаться файлы, которые отправляются в файл с расширением .tar. Вводите эту опцию по желанию.
- f — опция, которая отвечает за присвоение имени файлу с расширением .tar. Эта опция всегда идет последней.
- Имя.tar — это имя архива. Введите любое имя по своему желанию, но в конце имени не забудьте добавить расширение .tar . К имени файла можно также добавить путь к файлу, если вы хотите создать архив в другой директории (то есть отличной от текущей).
- /путь/к/каталогу — это путь к каталогу, из которого создается архив. Этот путь соотносится с вашим текущим каталогом. Например, если полный путь ~/home/user/Pictures , а вы находитесь в каталоге /home , введите /user/Pictures . Имейте в виду, что все подкаталоги также будут включены.
Создайте архив из нескольких папок (каталогов). Для этого в конце команды tar нужно добавить пути к соответствующим папкам:
tar -cvf Имя.tar /etc/папка1 /var/www/папка2
Добавьте файлы или папки в существующий архив. Чтобы добавить файлы и папки в существующий файл с расширением .tar, используйте соответствующую опцию: [3] X Источник информации
tar -rvf Имя.tar файл.txt путь/к/другому/каталогу
- r — опция, которая отвечает за добавление файла или папки в существующий архив. Она ставится вместо опции c , которая используется, когда создается новый архив.
Сожмите существующий файл с расширением .tar. Чтобы быстро сжать архив, воспользуйтесь командой gzip. Чтобы максимально сжать файл и получить архив наименьшего размера, воспользуйтесь командой bzip2 (имейте в виду, что эта команда будет сжимать архив дольше, чем команда gzip).
- Команда gzip создаст файл с расширением .gz , то есть получится файл Имя.tar.gz
- Команда bzip2 создаст файл с расширением .bz2 , то есть получится файл tarName.tar.bz2
Сожмите архив, когда он создается. Можно сжать уже созданный архив, а можно сжать его в процессе создания с помощью соответствующих опций: [4] X Источник информации
tar -czvf Имя.tar.gz /путь/к/каталогу tar -cjvf Имя.tar.bz2 /путь/к/каталогу
- z — опция, которая отвечает за сжатие нового архива с помощью gzip. Обязательно добавьте расширение .gz в конце имени файла.
- j — опция, которая отвечает за сжатие нового архива с помощью bzip2. Обязательно добавьте расширение .bz2 в конце имени файла. [5] X Источник информации