Linux глазами хакера
Шрифт:
Чтобы добиться правильного результата, нужно перейти в корень диска и выполнять команду там:
В данном случае мы из корневого каталога разархивируем резервную копию, которая находится в файле /home/backup.tar.
Помимо этого, для архивных операций могут пригодиться следующие ключи утилиты tar:
□
□
□
□
□
□
□
□
С помощью утилиты tar можно архивировать сразу несколько директорий. Следующая команда помещает в архив /home и /etc:
Чтобы просмотреть содержимое архива, можно выполнить команду:
В ответ на это, на экране будут показаны все файлы и директории архива, их права доступа и владельцы. Результат можно увидеть в листинге 13.1.
Посмотрите на последнюю колонку, где показано расположение файла. Обратите внимание, что путь не начинается с символа "/", указывающего на корень диска. Поэтому такой архив нужно распаковывать в корне, иначе он будет создаваться в текущей директории.
13.5.3. gzip
В ОС Linux есть достаточно много различных утилит для упаковки данных. Наиболее популярной из них является gzip.
Чаще всего резервированию подлежат документы, размер которых в заархивированном виде может уменьшаться на 90%. Текстовые данные сжимаются намного лучше, чем программы.
Недостаток архивирования — возрастает нагрузка на процессор и может потребоваться больше времени на создание полной копии.
За счет того, что архив занимает намного меньше места, его копирование на сетевые ресурсы или запись на съемные носители (ZIP, JAZ, CD-R/RW, DVD-R/RW и др.) будет производиться быстрее. В итоге может получиться, что временные затраты на архивирование (с учетом занятости процессора) будут равны времени на копирование без архивирования.
Прежде чем сжимать какой-либо файл, рекомендуется подготовить tar-архив. Потом достаточно выполнить команду упаковки:
В качестве ключа
Теперь просмотрите содержимое директории (команда
Чтобы разархивировать такой файл, можно пользоваться все той же командой tar, только необходимо указать ключи
Эта команда сначала разархивирует gz-файл и тут же распакует tar-архив.
Если необходимо из gz-файла снова получить tar-архив (без его распаковки), то можно выполнить команду:
После этого вы снова можете увидеть файл backup.tar, а backup.tar.gz исчезнет.
Теперь вы готовы написать свой сценарий, который будет собирать директории для архивирования в tar-файл, а затем сжимать его, чтобы уменьшить его размер. Но зачем использовать две команды, когда можно обойтись одной. Вот как это делается:
В данном примере мы собираем в tar-архив директорию /home и тут же сжимаем ее утилитой gzip.
Помимо gzip для архивирования иногда используется утилита compress, но ее возможности по сжатию ниже, и к тому же вокруг нее были скандалы и разбирательства по поводу лицензии. Большинство администраторов уже перешли на использование gzip, и я вам рекомендую с самого начала привыкать к этой программе.