вторник, 26 апреля 2011 г.

backup и восстановление в *nix

У меня дома что-то непонятное творится с винтом. Он то сыпется, то работает как часы. Причем если сыпется, то только системный раздел, в общем живу как на вулкане. Поэтому решил озаботиться бэкапами\восстановлением. Нагуглил мануал 6-ти летний давности, но он работает и работает отлично для всех *nix систем. Так как у меня убунту - ниже примерный перевод этого мануала для убунту (но все это можно делать на любой другой unix-like системе)
 


Бэкап
Все что нужно, что бы сделать бэкап системы - просто за архивировать нужные файлы. В отличии от windows для этого не надо загружаться с live-cd и использовать  проприетарные программы вроде Norton Ghost.
 
Для начала надо перейти в корень вашей файловой системы -
 
cd /
 Все команды выполняются от имени root'a, по-этому в убунту удобно сделать вот так -

sudo su
А вот собственно команда, которая нам сделает  полный бэкап -
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys /
  Давайте рассмотрим ее подробней. 
  • tar - понятно, программа для архивации
  • cvpfz - опции для tar'a - создать архив, сохранить права, и сжать gzip'ом
  • затем идет имя архива backup. tgz (я архивировал сразу на второй диск, в который у меня смонтирован /home т.е. у меня выглядело вот так - /home/backup.tgz )
  • затем идут директории, которые мы НЕ будем архивировать (после параметра --exclude=)
  • ну и собственно сам путь, откуда будет собираться архив /
Если вы хотите сильнее сжать ваш бэкап архив, вы можете использовать bzip, но это займет больше времени, для этого надо изменить ключи на вот эти -
- cvpjf backup.tgz.bz2

 Все остальное так же.

Восстановление

Будьте осторожней, если вы не до конца поймете что вы делаете, вы можете уничтожить важные для вас данные!

Итак, убедитесь, что вы имеете права root'a и находитесь в в корневой директории / там же где и ваш архив.
 Одна из прекрасных способностей линукса в том, что этот метод будет работать на любой рабочей системе, не нужно заморачиваться за boot-cd и прочие подобные вещи. Естественно, если вы уронили систему так, что она даже не загружается - вам необходим загрузочный диск, но результат будет тем же самым - полностью восстановленная система.
Вот команда, которая вам понадобится - 

  tar xvpfz backup.tgz -C / 
 Или, если вы использовали bz2 -

tar xvpfj backup.tar.bz2 -C /

Будьте предельно внимательны - эта команда перезапишет ВСЕ файлы в вашей системе на файлы из архива!

После того, как команда отработает, убедитесь, что у вас есть те директории, которые мы исключали из бэкапа, если нет - создайте их

mkdir proc
mkdir lost+found
mkdir mnt
mkdir sys
etc...

После перезагрузки, все должно быть вернутся в прежнее, рабочее состояние.


вот источник - http://ubuntuforums.org/showthread.php?t=35087

В следующий раз напишу как восстановить GRUB системный загрузчик.


0 коммент.:

Отправить комментарий