Европейский Университет в Санкт-Петербурге
Опубликован: 04.07.2008 | Доступ: свободный | Студентов: 876 / 162 | Оценка: 4.30 / 3.78 | Длительность: 18:28:00
Лекция 11:

Резервное копирование и восстановление

< Лекция 10 || Лекция 11: 1234 || Лекция 12 >

Где сохранить резервную копию

Рассмотрим несколько возможных носителей для хранения копий данных. Они отличаются емкостью, скоростью записи и чтения, стоимостью, чувствительностью к внешним воздействиям.

Ленты (кассеты) – требуют использования накопителей на магнитной ленте. Емкость кассет обычно невелика, но самый современный формат DLT позволяет сохранять до 70 Гбайт на одной кассете. К сожалению, объем и скорость работы лент и кассет растет медленнее, чем объем и скорость жестких дисков, и поэтому ценность ленточных накопителей падает день за днем: невыгодно сохранять один раздел жесткого диска на нескольких кассетах – это очень затягивает и запись, и чтнение данных. По традиции ленточные накопители остаются стандартом резервного копирования в больших системах, требующих регулярного сохранения данных в архивах. Долговременное хранение кассет достаточно удобно, хотя они подвержены воздействию электромагнитных полей и должны храниться вдали от сильных источников тепла и электромагнитов. Дополнительной проблемой является то, что емкие кассеты и быстрые накопители на магнитной ленте стоят довольно дорого: SDLT стример на 160 Gb от компании Hewlett Packard стоит примерно 3500-4000 долларов, картридж к нему – 100 долларов.

Идеальным носителем могли бы быть оптические компакт-диски (CD-R или DVD): скорость их записи заметно выше, чем скорость записи лент, скорость чтения сравнима со скоростью жестких дисков, они практически не подвержены внешним воздействиям (конечно, их не следует поджаривать или колотить, как и прочие носители, но зато электромагнитные поля им нипочем), хранить диски можно в штабелях, в конвертах, коробках и т.п., более того, их можно прочесть в любой операционной системе – от Windows до Mac, включая все разновидности UNIX. Одно плохо: пока на такие диски не научились записывать более 700 Мб (CD-R) или 4,7 Гбайт (DVD) – а это слишком мало для сохранения копий больших разделов. В последнее время на сцену вышли диски Blu-Ray, на которые можно записать до 54 Гб информации, и уже анонсированы первые результаты в проекте создания дисков объемом до 200 Гб. Согласно источнику http://www.gizmolovers.com/tag/solaris/ в конце 2007 года устройство для чтения дисков Blu Ray, совместимое с Solaris, стоило $429, а цены на устройства, записывающие диски Blu Ray, в июне 2008 стоили порядка $600 на ebay.com.

Jaz- и ZIP-диски. Обладают комбинацией недостатков лент и компактдисков, большого смысла рассматривать их как промышленное средство сохранения данных в настоящее время нет. Объем Jaz-диска – 2 Гб, ZIP-диска – 100 или 250 Мбайт.

Дискеты. Очень маленький полезный объем (1,44 Мбайта) компенсируется универсальностью: читаются повсюду, где есть дисковод. Чрезвычайно чуствительны к внешним магинтным полям: не рекомендуется, например, носить дискеты в портфеле рядом с мобильным телефоном. Качество современных дискет подстать их цене: из коробки ценой три доллара четыре дискеты из десяти легко окажутся бракованными еще до начала использования. Как средство хранения копий важных файлов лучше не рассматривать.

Флэш-память. Начиная с версии 8 Solaris стандартно поддерживает такой вид накопителей, хотя в некоторых случаях требуется установить обновление системы от Sun. Современные недорогие модели флэш-модулей, подключаемых к компьютеру по USB, имеют объем до 128 Мбайт. а более дорогие – до 1Гбайт. Можно использовать как хорошую замену дискетам и даже компакт-дискам. Этот носитель следует беречь от воздействия сильных магнитных полей и высокой температуры.

Наконец, жесткие диски. По-видимому, следует признать их лучшим вариантом на сегодняшний день, так как обеспечить регулярное копирование данных на второй жесткий диск или диск соседнего компьютера сравнительно просто (достаточно написать скрипт), а обеспечить оперативную замену вышедшего из строя диска на резервный не так уж и дорого. Кроме этого, жесткие диски с резервными копиями стоят ненамного дороже емких магнитных лент, зато они существенно быстрее и удобнее в использовании, поэтому их можно использовать не только для зеркалирования данных, но и для архивного хранения.

Средства резервного копирования

tar

Для сжатия больших файлов в UNIX изначально использовалась программа compress. Она сжимала файл, после сжатия добавляла к имени файла .Z. Программа compress до сих пор поставляется практически со всеми диалектами UNIX. В IRIX и некоторых других системах она является стандартной утилитой сжатия. Чтобы вернуть файл, сжатый compress, к прежнему, несжатому состоянию, используется uncompress.

В Linux и FreeBSD, а также во многих других диалектах для сжатия применяют gzip. Он использует тот же алгоритм сжатия LZW, что и WinZip или pkzip, известные Вам по системам Microsoft. Однако, он не совместим по формату файлов ни с WinZip, ни с pkzip. Программа WinZip for Windows понимает форматы gzip, а gzip ее форматы не понимает. Для распаковки файлов, сжатых gzip, нужен gunzip. Большинство версий gzip не умеют сжимать каталоги с их содержимым – только файлы.

Есть еще утилиты zip и unzip, которые работают с теми же форматами файлов, что и pkzip, WinZip и другие архиваторы в Microsoft-системах. Они редко используются в UNIX, только если нужно обеспечить совместимость с Windows-системами.

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

Затем удобно сжать получившийся файл с помощью gzip, чтобы он занимал меньше места. Многие дистрибутивы программных пакетов в UNIX упакованы tar и gzip. У команды tar даже есть ключ z. Он говорит tar, что после упаковки файлов в архив нужно вызвать gzip для сжатия. Такой же ключ используется и для распаковки, когда tar перед тем, как начать свою работу, вызывает gunzip.

Например, мне нужно упаковать дистрибутив apache, который лежит в /home/apache:

cd /home
tar cvzf apache.tar.gz apache/*

Всего три команды в UNIX принимают (и в некоторых версиях – требуют) ключи без знака "минус" перед ними. Это ps, dump и tar. Мы использовали для создания архива следующие ключи:

  • сcreate – создать архив;
  • vverbose mode – выводить имена всех пакуемых фалов на экран;
  • zzip – после упаковки вызвать gzip для сжатия;
  • ffile – записать результат в файл, который указан после ключа f, а не на первый ленточный накопитель, как по умолчанию.

apache.tar.gz – это имя архива, а apache/* – то, что надо упаковать.

Лучше всего запаковывать целый каталог, а не входить в него и паковать содержимое, вот так:

# так делать не надо
cd /home/apache
tar cvzf apache.tar.gz *

Архив так тоже можно создать, но при распаковке он рухнет всеми своими сотнями файлов и подкаталогов в тот каталог, где он будет распаковываться. Это неудобно, и так не принято. Дурной тон. Намного вежливее и красивее упаковать сразу целый каталог, как в предыдущем примере. Тогда по команде

tar xzvf apache.tar.gz

в том каталоге, где лежит архив, создастся подкаталог apache (помните, там было сказано "apache/*"?). И уже в него будут распакованы все файлы и подкаталоги архива. В этой команде tar мы использовали один незнакомый ключ – x. Он требует распаковать архив.

compress, gzip, zip

Для сжатия архивов можно применять как gzip, так и compress – более старую утилиту из древних систем UNIX. Результатом выполнения команды сжатия файла data.txt compress data.txt будет файл data.txt.Z. При применении gzip результат будет в среднем лучше, так как этот архиватор обычно сжимает файлы сильнее. При этом он дописывает к имени сжатого файла суффикс .gz. В обоих случаях исходный (несжатый) файл исчезает, остается только сжатый файл. Надо помнить, что при нехватке места на диске архив не может быть создан, так как несжатый исходный файл удаляется только после его успешного сжатия и переименования временного сжатого файла в окончательный результат.

Для декомпрессии файлов, сжатых утилитами compress и gzip используйте uncompress и gunzip соответственно. В некоторых версиях UNIX используется еще более новый архиватор bzip2 (и де-компрессор bunzip2 ), но в Solaris он пока еще не портирован.

dd

Для копирования целых устройств в их образы (например, дискет или компакт-дисков) и обратно служит программа dd. С ее помощью также можно копировать целые разделы дисков. Обычный формат вызова этой программы таков:

dd if=/dev/fd0 of=/usr/home/admin/diskettes/image1

Фактически, dd расценивает то, что она копирует, как блоки произвольных данных указанной длины (используется разумное умолчание в 512 байтов). Использовать dd можно тогда, когда следует иметь две или более резервные копии: первую копию на ленту записывают с помощью программы ufsdump, а остальные создают копированием с ленты на ленту программой dd:

dd if=/dev/rmt/0h of=/dev/rmt/2h

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

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

< Лекция 10 || Лекция 11: 1234 || Лекция 12 >
Александр Тагильцев
Александр Тагильцев

Где проводится профессиональная переподготовка "Системное администрирование Windows"? Что-то я не совсем понял как проводится обучение.

Игорь Колясников
Игорь Колясников
Россия, Сысертский р-н