<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.linuxformat.ru/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki.linuxformat.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=LXF107%3ADrVraun3</id>
		<title>LXF107:DrVraun3 - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.linuxformat.ru/wiki/index.php?action=history&amp;feed=atom&amp;title=LXF107%3ADrVraun3"/>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF107:DrVraun3&amp;action=history"/>
		<updated>2026-05-13T03:53:15Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.19.20+dfsg-0+deb7u3</generator>

	<entry>
		<id>http://wiki.linuxformat.ru/wiki/index.php?title=LXF107:DrVraun3&amp;diff=8999&amp;oldid=prev</id>
		<title>Crazy Rebel: викификация, оформление, иллюстрация</title>
		<link rel="alternate" type="text/html" href="http://wiki.linuxformat.ru/wiki/index.php?title=LXF107:DrVraun3&amp;diff=8999&amp;oldid=prev"/>
				<updated>2009-10-21T08:13:12Z</updated>
		
		<summary type="html">&lt;p&gt;викификация, оформление, иллюстрация&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Назад, к основам==&lt;br /&gt;
&lt;br /&gt;
: Первое правило системного администратора гласит «никому не говори о системном администрировании». Второе – «резервируйте как маньяки».&lt;br /&gt;
&lt;br /&gt;
Диски сейчас достаточно надежны, и легко поддаться иллюзии, что хранимые на них данные вечны. Чтобы открыть нам глаза на их эфемерность, нужна катастрофа. Есть такая шутка, что в мире существует два типа системных администраторов – те, кто&lt;br /&gt;
регулярно делают резервные копии данных и те, кто хотел их сделать.&lt;br /&gt;
За последние десять лет лично у меня было два сбоя жесткого диска. Последний случай был с нашим Sky HD, и он, наверное, не в счет.&lt;br /&gt;
Второй – с ноутбуком. Но я слышал и о других, включая незабываемую историю, когда ребенок решил отключить папин USB-диск и спустил&lt;br /&gt;
его в унитаз. Здорово.&lt;br /&gt;
&lt;br /&gt;
За годы я перепробовал многие способы резервного копирования.&lt;br /&gt;
В своей прошлой жизни (до Linux), я пользовался двумя программами: ''dump'' и ''restore''. Мы записывали дамп на полудюймовую магнитную ленту 800bpi (бит на дюйм) – это, наверное, было где-то в 1977. Важно отметить, что ''dump'' и ''restore'' работали с инкрементными резервными копиями.&lt;br /&gt;
Мы начинали с дампа «уровня 0», в котором было все. На следующий день делался дамп «уровня 1», который содержал лишь изменения по&lt;br /&gt;
сравнению с предыдущим уровнем 0, и так далее. Инкрементальное резервное копирование – очень выгодная штука, потому что большинство файлов не изменяется за день и можно сэкономить массу времени, полосу пропускания сети и носители.&lt;br /&gt;
&lt;br /&gt;
===Живое ископаемое===&lt;br /&gt;
&lt;br /&gt;
Удивительно, но эти две древние программы дожили до сегодняшнего Linux (см. http://dump.sourceforge.net). ''dump'' и ''restore'' работают не как большинство программ. Они не получают доступ к данным файла через обычные системные вызовы, а открывают устройство раздела диска (например, '''/dev/sda1''') и взаимодействуют со структурой файловой системы напрямую. Отсюда – несколько важных следствий. Во-первых,&lt;br /&gt;
''dump'' и ''restore'' работают только с файловыми системами '''ext2''' и '''ext3'''. Они не могут, например, создать резервную копию образов файловых&lt;br /&gt;
систем '''Reiser''' или '''FAT32'''. Во-вторых, желательно не пользоваться ими на рабочих файловых системах, во всяком случае, не на критических.&lt;br /&gt;
Некоторые администраторы перед резервным копированием размонтируют раздел, другие монтируют его в режиме «только для чтения».&lt;br /&gt;
На интенсивно работающих серверах предприятия ни один из этих подходов применять нельзя.&lt;br /&gt;
&lt;br /&gt;
Третий подход, для случая, когда вы используете логические тома, это снять образ диска и сделать его резервную копию. Четвертый подход – махнуть на все рукой и надеяться на лучшее. Так как эти ограничения на предприятиях очень досаждают, ''dump'' и ''restore'' почти полностью утратили популярность. Однако есть и одно довольно тонкое преимущество работы ниже слоя виртуальной файловой системы – резервное копирование файловой системы не влияет на временные метки файлов.&lt;br /&gt;
&lt;br /&gt;
Более популярный, по крайней мере для небольших и средних систем, способ резервного копирования – просто поддерживать с помощью ''Rsync'' актуальную копию файловой системы, скажем, на сменном жестком диске, на сервере для резервного копирования в сети или даже – если скорость позволяет – на диске, поставляемом вашим провайдером. Этот подход подробно описан Джульеттой Кемп [Juliet Kemp] в ее превосходном руководстве по ''Rsync'' в [[LXF105:Резервирование он-лайн|LXF105]], и я не буду здесь его обсуждать.&lt;br /&gt;
&lt;br /&gt;
Есть и третий инструмент, очень популярный для создания и хранения архивов – ''tar''. Например, многие пакеты на сайте SourceForge хранятся в виде '''tar'''-архивов. В ''tar'' удобно то, что архивы можно сжимать. Навскидку: сжатый '''tar'''-архив каталога '''/lib''' на моем компьютере имеет размер 90 МБ; сама файловая система занимает 262 МБ. Второй тест – архивирование 400 МБ картинок в JPEG – дает выигрыш менее одного&lt;br /&gt;
процента, что неудивительно, так как эти файлы сжаты сами по себе.&lt;br /&gt;
&lt;br /&gt;
===Резервное копирование с ''tar''===&lt;br /&gt;
&lt;br /&gt;
Хотя ''tar'' широко используется для архивирования данных, он редко применяется для ежедневного резервного копирования, так как не&lt;br /&gt;
может создавать инкрементные резервные копии – по крайней мере, так считает большинство. На самом деле в версии GNU есть отличный&lt;br /&gt;
механизм создания и восстановления инкрементных архивов, он просто не очень хорошо документирован на man-странице, и описание приходится искать на сайте GNU. В его основе – сохранение дополнительных метаданных в отдельном файле, файле снимка. Проиллюстрируем это&lt;br /&gt;
на небольшом примере.&lt;br /&gt;
&lt;br /&gt;
Предположим, я начинаю в «первый день» с каталога '''mypics''', в котором есть три файла:&lt;br /&gt;
&lt;br /&gt;
 $ ls ~/mypics&lt;br /&gt;
 caption.jpg storm1.jpg sunset1.jpg&lt;br /&gt;
&lt;br /&gt;
Если создать архив '''tar''', в нем будут все три файла. Это наша резервная копия «уровня 0»:&lt;br /&gt;
&lt;br /&gt;
 $ cd ~/mypics&lt;br /&gt;
 $ tar cvf /backups/mypics.0.tar -g mypics.snar .&lt;br /&gt;
 ./&lt;br /&gt;
 ./caption.jpg&lt;br /&gt;
 ./mypics.snar&lt;br /&gt;
 ./storm1.jpg&lt;br /&gt;
 ./sunset1.jpg&lt;br /&gt;
&lt;br /&gt;
Первый аргумент ''tar'' ('''cvf''') – это на самом деле набор из трех опций.&lt;br /&gt;
'''c''' означает «создать архив», '''v''' – «подробный» (выводить имена файлов во время их записи в архив), а '''f''' – «следующий аргумент будет именем файла-архива». Здесь я предполагаю, что '''/backups''' – точка монтирования файловой системы сервера '''NFS''' или внешнего диска. Интересен флаг '''-g'''. Он велит ''tar'' сохранить запись о том, что было архивировано (и когда) в файл снимка '''mypics.snar'''. Наконец, вроде&lt;br /&gt;
бы ничего не значащая точка . в конце команды – это имя каталога, который нужно архивировать, в данном случае – текущая директория.&lt;br /&gt;
&lt;br /&gt;
На второй день я добавил в каталог новый файл '''baby.jpg'''. Я создаю другой архив. Он содержит только новый файл и является нашим «уровнем 1»:&lt;br /&gt;
&lt;br /&gt;
 $ tar cvf /backups/mypics.1.tar -g mypics.snar .&lt;br /&gt;
 ./&lt;br /&gt;
 ./baby.jpg&lt;br /&gt;
&lt;br /&gt;
На третий день я могу продолжить, создав резервную копию уровня 2 следующим образом:&lt;br /&gt;
&lt;br /&gt;
 $ tar cvf /backups/mypics.2.tar -g mypics.snar .&lt;br /&gt;
&lt;br /&gt;
Следует понимать, что цифры, которые я добавил в выходные файлы, исключительно для меня, и уровень архива они не контролируют.&lt;br /&gt;
Он обрабатывается файлом снимка '''mypics.snar'''. Пока один и тот же файл снимка продолжает обновляться, каждый архив будет инкрементным по отношению к предыдущему.&lt;br /&gt;
&lt;br /&gt;
Итак, предположим, что по какой-то причине мы потеряли содержимое каталога '''mypics''', и нужно восстановить его из резервной копии. &lt;br /&gt;
Потребуется разархивировать каждый уровень по порядку:&lt;br /&gt;
&lt;br /&gt;
  $ tar xvf /backups/mypics.0.tar -g /dev/null&lt;br /&gt;
  ./&lt;br /&gt;
  ./caption.jpg&lt;br /&gt;
  ./mypics.snar&lt;br /&gt;
  ./storm1.jpg&lt;br /&gt;
  ./sunset1.jpg&lt;br /&gt;
  $ tar xvf /backups/mypics.1.tar -g /dev/null&lt;br /&gt;
 ./&lt;br /&gt;
 ./baby.jpg&lt;br /&gt;
 $ tar xvf /backups/mypics.2.tar -g /dev/null&lt;br /&gt;
 ./&lt;br /&gt;
 ./chris1.jpg&lt;br /&gt;
&lt;br /&gt;
Во время восстановления нам все еще нужен флаг '''-g''', чтобы обеспечить инкрементное поведение, но в этом случае файл снимка фактически не требуется. Обычно в таких ситуациях указывается '''/dev/null''', но сойдет и все, что угодно. При извлечении из инкрементной резервной&lt;br /&gt;
копии ''tar'' пытается восстановить точное состояние файловой системы,&lt;br /&gt;
которое было при создании архива. В частности, будут удалены файлы,&lt;br /&gt;
которые не существовали в своих каталогах на тот момент.&lt;br /&gt;
&lt;br /&gt;
При архивировании по приведенной выше схеме каждый день создается резервная копия нового уровня. Альтернативная схема может&lt;br /&gt;
быть такой: начинаем с архива уровня 0, затем каждый день создаем только архив уровня 1. Конечно, этот архив мало-помалу разрастается,&lt;br /&gt;
но зато из него проще восстановить данные, так как нужен лишь архив нулевого уровня и последняя версия архива уровня 1. Это потребует&lt;br /&gt;
некоторой ручной настройки файла снимка. В частности, будет нужно создать рабочую копию этого файла для создания резервной копии&lt;br /&gt;
уровня 1 на второй день, и для создания следующей версии уровня 1&lt;br /&gt;
на третий день тоже нужна рабочая копия исходного файла. Во второй&lt;br /&gt;
день вы делаете примерно следующее:&lt;br /&gt;
&lt;br /&gt;
 $ cp mypics.snar mypics.snar-2&lt;br /&gt;
 $ tar cvf /backups/mypics.day2.1.tar -g mypics.snar-2 .&lt;br /&gt;
&lt;br /&gt;
и на третий день делаете то же самое снова:&lt;br /&gt;
&lt;br /&gt;
 $ cp mypics.snar mypics.snar-3&lt;br /&gt;
 $ tar cvf /backups/mypics.day3.1.tar -g mypics.snar-3 .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;[[Изображение:LXF107_47_1.jpg]]&amp;lt;/center&amp;gt;&lt;br /&gt;
: Двухуровневая и многоуровневая схемы резервного копирования предоставляют компромисс между размером резервных копий и сложностью процесса полного восстановления.&lt;br /&gt;
&lt;br /&gt;
===6 постулатов резервирования===&lt;br /&gt;
&lt;br /&gt;
# Самое важное – не выбрать самую последнюю, самую быструю технологию с суперсжатием, а гарантировать, что вы будете его делать, каким-то разумным способом, на последовательной и регулярной основе. Резервное копирование чем-то похоже на уплату страховых взносов: вы надеетесь, что страховой случай никогда не наступит, и появляется соблазн не платить их совсем.&lt;br /&gt;
# Создавать резервные копии файловой системы на том же жестком диске – все равно, что назначать свидание Карле Саркози, т.е. пустая трата времени. Не делайте этого.&lt;br /&gt;
# Если вы сохраняете резервную копию на другой компьютер в сети, помните, что если взломают ваш компьютер, то и до сервера резервных копий тоже могут добраться. (Ничто не убедит вас в сохранности данных сильнее, чем три метра расстояния между локальной сетью и внешним USB-накопителем на полке.)&lt;br /&gt;
# Если резервные копии сохраняются на сменном диске, помечайте его!&lt;br /&gt;
# Храните внешние носители (CD или жесткие диски) в других помещениях. Мне помогают в этом соседи. Конечно, они получают доступ к личным данным, поэтому им нужно доверять (или предполагать, что они не сумеют добраться до данных).&lt;br /&gt;
# Какой бы метод вы ни использовали, убедитесь, что данные на деле можно восстановить. Проведите «учения» – представьте, что несколько файлов утеряны, и восстановите их.&lt;br /&gt;
&lt;br /&gt;
===Сохраним на века===&lt;br /&gt;
&lt;br /&gt;
Сколько, вы думаете, проживет носитель с резервной копией? Месяц? Год? Десять лет? Век? Ответ на этот вопрос может сильно повлиять на&lt;br /&gt;
выбор технологии резервного копирования. В восьмидесятых я встречал совершенно безумных администраторов, которые бережно хранили резервные копии своих баз данных на полудюймовой магнитной ленте, хотя у них больше не было компьютера с соответствующей&lt;br /&gt;
лентопротяжкой. Наверное, то же самое сейчас происходит с дискетами. Исходный код тех важных утилит, который вы бережно записали&lt;br /&gt;
на восьмидюймовую дискету в 1977 году – сколько человек сможет восстановить их сейчас? И, если вы уже улыбнулись, сколько времени пройдет, прежде чем&lt;br /&gt;
автор статьи напишет в журнале то же самое «об этих древних CD и DVD» и пошутит про «смешные старые USB-брелки всего на 4 ГБ»?&lt;/div&gt;</summary>
		<author><name>Crazy Rebel</name></author>	</entry>

	</feed>