Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VIRTUALBOX+ОС_МЕТОДИЧКА / ОССиО_методичка_1.doc
Скачиваний:
127
Добавлен:
16.03.2015
Размер:
271.36 Кб
Скачать

1. Работа с архиваторами в консольном режиме.

II. Архивы.

***

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

Команда tarнаиболее часто используется для архивации файлов. Первоначально она была предназначена для сбрасывания архивов на магнитную ленту (ТареArchive). Синтаксис командыtar:

tar -ключиимя_будущего_архива file1 file2 … fileN ,

где filel ... fileN- список файлов (или каталогов) добавляемых в архив или извлекаемых из него. Используемые ключи подробно описаны в справке.

1. Создайте каталог archв вашем домашнем каталоге и скопируйте туда все файлы, которые удается из каталога/etc.

2. С помощью команды tarсоздайте архив каталогаarch. Новый архив назовитеarchive.tar , а в качестве ключей используйте-cvf (ключfиспользуется очень часто).

4. Командой tar просмотрите содержимое созданного архива, используя ключи -tf (или-tvf для подробного отображения). Обратите внимание на путь к файлам.

5. Создайте еще один архив, используя следующее командное выражение:

tar -cvРf archive_1.tar ~/arch

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

Существует возможность одновременно создавать архив и сжимать его программой gzip.

6. Введите командное выражение:

tar -cvPzf archive_1.tar.gz ~/arch

Обратите внимание, что здесь мы добавили новый ключ -z и стандартное расширение .gz для программы сжатия gzip.

7. Сравните размеры исходного и сжатого архивов, т.е. файлов archive_1.tar и archive_1.tar.gz. Какой можно сделать вывод?

Рассмотрим пример добавления нового файла в существующий архив.

8. Создайте пустой файл isfile(или др. имя файла), а затем добавьте его в архивarchive_1.tar, используя командное выражение:

tar -rvPf archive_1.tar ~/isfile

Просмотрите архив archive_1.tar и убедитесь, что этот файл существует там (он должен быть в конце списка).

9. Проверка архива сводится к поиску различий между содержимым архива и исходным каталогом. Для проверки выполните командное выражение:

tar -dvf archive_1.tar

Обратите внимание на вывод сообщений этой команды. Назначение нового ключа -dможно узнать из справки.

10. Удалите последний файл из каталога arch , например, xpdfrc. Снова произведите проверку и проанализируйте результаты.

Обновление архива.

11. Поскольку из исходного каталога был удален файл xpdfrc, то нужно бы обновить архив. Для этого введите следующее командное выражение:

tar -uPvf archive_1.tar ~/arch

Предположите, для чего нужен ключ -u ? Обратите внимание на то, что последнего (удаленного) файла теперь в архиве не будет.

12. Удалите каталог arch/, а затем восстановите файлы этого каталога из архива, используя выражение:

tar -xvPf archive_1.tar

Удалите файл isfile из вашего рабочего каталога.

Для извлечения отдельного взятого файла из архива используется следующий синтаксис:

tar -xPvf имя_архива каталог_назначения/имя_извлекаемого_файла

13. Извлеките из архива файл isfile , разместив его в вашем рабочем каталоге (исходное место расположения).

Слияние архивов.

14. Создайте каталог two в вашем домашнем каталоге. Скопируйте туда пару файлов (например, file3 и fruit). Заархивируйте каталог two, используя ключи -cPvf. Новый архив назовите archive_2.tar.

15. Объедините два архива в один, т.е. к архиву archive_1.tar присоедините содержимое архива archive_2.tar. Для этого используйте синтаксис:

tar -APvf имя_основного_архива

имя_присоединяемого_архива

Просмотрите содержимое архива archive_1.tar и убедитесь, что в нем добавилось содержимое архива archive_2.tar.

Примечание: Если вы не хотите переписывать существующие файлы, добавьте параметр k при восстановлении архива, например, tar -xPvkf archive-2.tar.

Для запроса подтверждения выполнения действий служит параметр w, например, tar -xPwvf archive-2.tar

Упаковка файлов

16. Создайте файл с произвольным именем (например, lsfile) с перечнем содержимого каталога /etc. (пример см. в лаб. 11 ). Посмотрите и запомните его размер.

Стандартная команда упаковки заменяет файл его упакованной версией и присоединяет свое расширение gz

В простейшем виде команда упаковки (gzip) /распаковки (gunzip) используется без ключей.

17. Упакуйте файл lsfile и посмотрите размер получившегося архива и обратите внимание на расширение файла.

18. Распакуйте архив lsfile.gz.

19. Для упаковки файла на стандартный вывод, введите командное выражение (имена ваших файлов могут быть другими):

gzip -с lsfile > lsfile.gz

Обратите внимание, что в этом случае исходный файл не уничтожается.

20. Распакуйте файл lsfile.gz, используя команду gzip с параметром -d.

Примечание: Если распакованный файл существовал ранее, то для его принудительного удаления можно ввести параметр -f. например,gzip -dfN lsfile2.gz. Здесь, параметр -f служит для перекрытия существующего файла, а параметр -N служит для восстановления имени исходного файла.

По умолчанию имя восстанавливаемого файла становится тем же, что и имя упакованного файла. Можно придать упакованному файлу суффикс (расширение) по вашему выбору, используя синтаксис:

gzip-S.новое_расширениеимя_сжимаемого_файла. Соответственно, для распаковки используется командаgunzip(остальная часть командного выражения аналогична команде сжатия с параметром -S).

22. Снова упакуйте файл lsfile, но с расширением .arj.

23. Используя команду gzipи ключ -lпросмотрите информацию об архивахlsfile.arj и lsfile.gz. Что в ней отображено и в чем разница?

Примечание: степень сжатия можно задавать вручную, для этого см. справку команде gzip.

Соседние файлы в папке VIRTUALBOX+ОС_МЕТОДИЧКА