5.4 Содержание отчета
По результатам работы необходимо подготовить отчет с приведением
текстов скриптов и скриншотов, демонстрирующих ее выполнение.
35
Лабораторная работа №6. Работа с архивами в Linux
6.1 Цель работы
Целью данной лабораторной работы является изучение особенностей
упаковки и распаковки данных в операционной системе Linux.
6.2 Теоретическая часть
Утилита tar предназначена для создания архивов файлов и каталогов. С
помощью этой программы можно архивировать файлы, обновлять их в архиве и
вводить в этот архив новые файлы. Можно архивировать и целые каталоги со
всеми их файлами и подкаталогами. При необходимости все эти файлы и
подкаталоги можно восстановить из архива. Программа tar предназначалась для
создания архивов на лентах, отсюда и название tar (tape archive, т.е. "архив на
ленте"). Архив можно создавать на любом устройстве, например на дискете или
в архивном файле на диске. Программа tar - идеальное средство для создания
резервных копий файлов или объединения нескольких файлов в один с целью
передачи его по сети.
В операционной системе Linux программу tar часто используют для
создания архивов на устройствах и в файлах. Ей можно дать указание
архивировать файлы на определенном устройстве или в определенном файле,
для чего служит опция f с именем устройства или файла. Синтаксис команды tar
с опцией f очевиден из нижеследующего примера. Имя устройства или файла
часто называют именем архива. При создании файла для tar-архива к имени
этого файла обычно добавляется расширение .tar Это условное обозначение;
оно не обязательно. В команде можно указать сколько угодно имен файлов.
Если указано имя каталога, то в архив включаются и все подкаталоги этого
каталога.
$ tar опцииf имя_архива.tar имена_файлов_и_каталогов
Для создания архива служит опция с. В сочетании с опцией f опция с
приводит к созданию архива в файле или на устройстве. Эта опция ставится
непосредственно перед опцией f. Обратите внимание, что дефиса перед опцией
нет. В следующем примере каталог mydir и все его подкаталоги сохраняются в
файле myarch.tar.
$ tar cf myarch.tar mydir
Потом пользователь может извлекать каталоги из архива, применяя
команду tar с опцией х. Опция xf позволяет извлекать файлы из архивного
файла или устройства. При извлечении формируются и все подкаталоги. В
следующем примере посредством опции xf команде tar дается указание извлечь
все файлы и подкаталоги из файла myarch.tar.
36
$ tar xf myarch.tar
Для добавления файлов в существующий архив служит опция r. В
приведенном ниже примере пользователь добавляет файлы из каталога letters в
архив myarch.tar.
$ tar rf myarch.tar letters
Если нужно изменить какой-либо файл в архивированных ранее
каталогах, можно с помощью опции u дать команде указание обновить архив,
заменив некоторые файлы их новыми версиями. Программа tar сравнивает
время
последнего
изменения
каждого
архивированного
файла
и
соответствующего файла в каталоге и копирует в архив все файлы с более
поздней датой модификации. В архив будут добавлены и все вновь созданные в
этих каталогах файлы. В следующем примере пользователь обновляет файл
myarch.tar, вводя в него все измененные и вновь созданные в каталоге mydir
файлы.
$ tar uf myarch.tar mydir
Если вы хотите посмотреть, какие файлы хранятся в архиве, дайте
команду tar с опцией t. В следующем примере показано, как с помощью этой
команды можно вызвать список всех файлов, хранящихся в архиве myarch.tar.
$ tar tf myarch.tar
Для создания резервных копий файлов на определенном устройстве
укажите имя этого устройства в качестве имени архива. В следующем примере
пользователь создает архив на дискете в устройстве /dev/fd0 и копирует в него
все файлы из каталога mydir.
$ tar cf /dev/tdO mydir
Для того чтобы извлечь архивированные таким образом файлы,
используйте опцию xf.
$ tar xf /dtv/fd0
Если архивируемые файлы занимают больше места, чем имеется на
носителе, например на дискете, создайте tar-архив, состоящий из нескольких
томов (дискет или лент).
Посредством опции M команде tar дается указание выводить сообщение о
том, что текущий носитель заполнен. При архивировании файлов на дискете с
использованием опции M в случае заполнения дискеты программа tar
предложит вам вставить новую дискету. Таким образом вы сможете записать
37
свой архив на нескольких дискетах.
$ tar cMf /dev/fd0 mydir
Чтобы распаковать архив, записанный на нескольких дискетах, вставьте
первую дискету в дисковод и введите команду tar с опциями х и М, как показано
ниже. Программа подскажет вам, когда надо вставить следующую дискету.
$ tar xMf /dev/fd0
При использовании команды tar операция сжатия архивных файлов не
выполняется. Если вы хотите сжать файлы, дайте tar указание вызвать утилиту
gzip. Если команда tar применяется с опцией z, то сначала программа gzip
выполняет сжатие, а затем tar архивирует файлы. Та же опция z обеспечит
вызов gzip для распаковки файлов при извлечении их из архива.
$ tar czf myarch.tar mydir
Помните, что между сжатием отдельных файлов с последующим
архивированием и сжатием всего архива есть разница. Во многих случаях архив
создается, чтобы переслать по сети несколько файлов в виде одного tar-файла.
Для сокращения времени передачи размер этого архива должен быть по
возможности небольшим. Чтобы добиться этого, можно с помощью утилиты
gzip сжать архивный tar-файл, уменьшив его размер, а затем переслать сжатую
версию. Получатель распакует его и восстановит файл. В результате
применения утилиты gzip к tar -файлам часто получаются файлы с расши-
рением .tar.gz. Расширение .gz добавляется к сжатому gzip-файлу. В следующем
примере создается сжатая версия файла myarch.tar под тем же именем, но с
расширением .gz.
$ gzip myarch.tar
$ la
myarch.tar.gz
Если вы хотите создать архив на некотором устройстве, например на
ленте или в файле, нужно дать команду tar с опцией f и именем устройства или
файла. Такой вариант эффективен при создании резервных копий файлов. Имя
устройства по умолчанию хранится в файле /etc/default/tar. Синтаксис команды
tar, подразумевающей использование устройства, заданного по умрлчанию
(накопителя на магнитной ленте), приведен в показанном ниже примере. Опция
f и имя устройства не задаются. Если указано имя каталога, то в архив
включаются все его подкаталоги.
$ tar опция имена_каталогов_и_файлов
38
В представленном ниже примере каталог mydir со всеми подкаталогами
сохраняется на ленте как на носителе по умолчанию.
$ tar с mydir
А в этом примере каталог mydir со всеми файлами и подкаталогами
извлекается из устройства, принятого по умолчанию, и помещается в рабочий
каталог пользователя.
$ tar x mydir
Достарыңызбен бөлісу: |