Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   Backup всей системы (http://forum.oszone.net/showthread.php?t=95412)

Coutty 04-12-2007 19:00 690456

Backup всей системы
 
Линукс у меня маленький - 3.3 Гб всего занимает + раздел с папкой /home.
Хотелось бы сделать бэкап на случай "всё порушилось", чтобы потом не пришлось переустанавливать и перенастраивать систему (т.е. всё записать, скажем на DVD-R). Но вот ведь в чём беда - там разрешения на папках разные стоят. Всякие сим- и хардлинки... Да и каталог /dev вряд ли нужно копировать (или нужно?)

С чего начать копать? Какие каталоги бэкапить не нужно? Можно ли написать скрипт, который будет упаковывать всё это сразу в ISO? И самое главное - как потом восстановить всё это с диска?

Система - Mandriva 2007.0.

ruslandh 04-12-2007 23:14 690635

1 Сохранить
Загружаешься с LiveCD
Упаковываешь в tar.bz2 всю файловую систему, сохрпняешь на внешнеи носителе
2 Восстановить
Загружаешься с LiveCD
Распаковываешь tar.bz2

Coutty 05-12-2007 17:28 691219

ruslandh, вот ведь в чём проблема - привод у меня один. Как загрузиться с LiveCD и распаковать архив? (Кстати, все права и ссылки в нём сохраняются?)
Места на винте под "скопировать" не найдётся =(

Можно сделать какой-нибудь свой микро-live-cd, чтобы записать его вместе с архивом на один диск?

ruslandh 05-12-2007 20:58 691333

1 Сам архив может быть и на USB диске, и в сети где-нибудь
2 Права сохранятся.
3 Можно и вариант с микро-live-cd организовать, если образ достаточно маленький. А можно и диск менять, если корень в ОЗУ.

Coutty 05-12-2007 21:31 691348

Вариант Linux на USB мне нравится больше)) Надо теперь только материал найти, как организовать (где-то на винте лежит).
Цитата:

Цитата ruslandh
А можно и диск менять, если корень в ОЗУ. »

Так ведь тот же ubuntu после загрузки всё равно к диску обращается, если новые программки вызывать.

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

lxa85 07-12-2007 10:32 692436

Coutty, Ubuntu слишком "тяжелая" операционка для LiveCD сегмента. Попробуй Blin. Я думаю все необходимые инструменты там есть

Coutty 08-12-2007 13:36 693255

LXA85, Blin качать надо, а Ubuntu уже есть.
В общем, я не понял как запаковать всё в .tar.bz2
Через "проводник" ничего не получается - прав доступа на всё нет.
Через mc - что-то странное происходит. Поставил для проверки архивировать каталог /bin (10.6 МБ), так через какое-то время архив был уже 150 МБ и это ещё не всё. Т.ч. тоже не работает.

Помогите со скриптиком, пожалуйста =^_^=

Или вообще, лучше воспользоваться Акронисом?

ruslandh 08-12-2007 13:55 693272

Смотрим
man tar

tar -cj -f ПУТЬ_КУДА/backup.tar.bz /mnt/ЧТО_Архивировать

Coutty 08-12-2007 14:15 693283

ruslandh, создаётся архив, который потом нельзя открыть ("Неподдерживаемый формат").
Кроме того - если писать что-то вроде tar -cj -f /mnt/win_d/linux.tar.bz /, то получится нечто рекурсивное =(

Видимо, лучше будет акронисом)) [хоть я его и в глаза-то не видел]

ruslandh 08-12-2007 14:55 693304

1 Рекурсивное не создасться, если вы будете архивировать только папки, входящие в корень tar -cj -f /mnt/win_d/linux.tar.bz ./*
2 Формат нормальный :) Его сам-же tar обратной командой разархивирует. - это всё баги mc
3 C акронисом уже хлебнули - он создаёт образы, которые кроме него никто не может прочесть, быват ошибки в созданном образе, которые до раскрытия образа не обнаружишь. Гораздо дольше работает.
3 А тут всё делаешь сам - единственно надо один раз самому сделать (на работе я это уже делал и не раз), причём вариант легко корректируется от реальной ситуации.
4 А насчёт LiveCD - я себе сам сделал с помощью средств Сизифа. Вернее чуть изменив то, что было в rescue диск от ALTLinux. Наверное то-же можно слелать и на другом другом дистрибутиве.

mar 08-12-2007 15:01 693309

Coutty,
акронисом точно получится, но что значит "Неподдерживаемый формат"? Чем и как ты его пытаешься открыть?

Чтобы исключить из архивирования каталог надо сказаь --exclude название

Уже ответили и более правильно, но пусть будет до кучи :)

Coutty 08-12-2007 15:39 693322

Цитата:

Цитата mar
но что значит "Неподдерживаемый формат"? »

Я его ark'ом пробую открыть. Не хочет.
Цитата:

Цитата ruslandh
1 Рекурсивное не создасться, если вы будете архивировать только папки, входящие в корень tar -cj -f /mnt/win_d/linux.tar.bz ./* »

Так мне всю структуру надо архивировать кроме /mnt (попробую --exclude)

Coutty 08-12-2007 17:17 693375

Итак, вот что получилось:
[root@localhost /]# tar -cj ./ --exclude=./mnt --exclude=./home/coutty --bzip2 --file=./mnt/win_d/linux.tbz
Но оно выдаёт много-много ошибок типа:
tar: ./sys/devices/platform/i8042/serio0: файл изменился во время чтения
tar: ./sys/devices/platform/i8042/power/wakeup: Файл урезан на 4095 байт; дополнен нулями

И в конце: "tar: Выход, отложенный по результатам предыдущих ошибок"
Итоговый файл - 1 Гб. Но там только /dev, /etc и /lost+found (зачем-то)))
В общем, что-то я недопонял.

mar 08-12-2007 18:00 693397

Coutty,
насколько я понимаю, была проделана попытка сархивировать живую систему, из-под котрой загрузились? Надо загрузиться с liveCD, тогда не будет меняющихся на ходу файлов (можно в single-mode, но liveCD проще).

Вот тут, кстати, статьи по резервному копированию:
http://www.ibm.com/developerworks/ru...ap8/index.html
http://www.opennet.ru/base/sys/dup_freebsd.txt.html
http://www.rhd.ru/docs/manuals/enter...r-rhlspec.html

Coutty 08-12-2007 19:14 693437

mar, хех, ну да... не учёл))
По второй ссылке наткнулся на такую идею - почему бы просто не скопировать весь раздел в файл?
Что-то вроде cp /dev/hda7 /mnt/win_d/linux_home.iso
Или со сжатием:
cat /dev/hda7 | bzip2 -1 > /mnt/win_d/linux_home.iso.bz2
(скорость, правда, не ахти...)

С распаковкой пока не знаю. Конкретно - как распаковать iso в /dev/hda#
Наверное так:
bzcat /mnt/win_d/linux_home.iso.bz2 | /dev/hda7
Или не надо ставить вертикальную черту? И вообще, будет ли работать? Не хотелось бы раздел запороть...

ruslandh 08-12-2007 19:29 693443

Я то-же вначале вился вокруг iso.bz2 и т.п.
По этому пути лучше упаковывать так-же как упаковываются образы в Knopix (по памяти команды не помню, но то, что это реализуемо - уверен) - тогда не надо распаковывать, а достаточно смонтировать образ по cloop и просто копировать файлы.
А так, по собственному опыту - лучше tar.bz2

Coutty 08-12-2007 20:25 693459

ruslandh, я ещё попробую с tar.bz2 из LiveCD или "консоли восстановления" установочного диска мандривы. Видимо, тут преимущество в том, что не нужно читать весь диск (вкл. пустое место) - экономится время.
А как насчёт сжатия? Вообще, стоит его выполнять?
Если выигрыш будет каких-нибудь полгигабайта с 3,5Гб за счёт увеличения времени в пять раз, то, пожалуй, и сжимать не стоит - прям так на DVD-RW...

И вообще, можно ли перенаправлять поток не в файл, а сразу на DVD-RW? Чтобы не выискивать свободное место на винте (3,5 Гб на одном разделе найти - тяжко).

ruslandh 08-12-2007 21:16 693484

Конечно раз на раз не приходится. но у меня 3Г сжимаются до 400-500М

mar 14-12-2007 01:10 696911

Цитата:

Цитата Coutty
И вообще, можно ли перенаправлять поток не в файл, а сразу на DVD-RW? Чтобы не выискивать свободное место на винте (3,5 Гб на одном разделе найти - тяжко). »

нет, ведь запись на cd-dvd диск все равно идет через создание iso

Coutty 17-12-2007 16:10 698724

Tar "тарит" не все файлы. Загрузился в аварийную систему мандривы, подмонтировал системный раздел, забэкапил его командой tar -cj ./linux --exclude=./linux/linux.tbz --bzip2 --file=./linux/linux.tbz , и, в общем, в архиве нет каталога /sys. Ещё по мелочи много чего не хватает. Пожалуй, остановлюсь на iso.bz2.

Так как вот это потом разархивировать?: cat /dev/hda5 | bzip2 -1 > /mnt/lin_home/linux_hda5.iso.bz2
Надо в этой команде ставить вертикальную черту или нет?: bzcat /mnt/lin_home/linux_hda5.iso.bz2 | /dev/hda5

Coutty 21-12-2007 14:31 701256

Такие дела... Если бзипать /dev/hdaX, то сжимается плохо - free-space ведь не нулями забит. Как можно зачистить всё незанятое файлами место?

ruslandh 21-12-2007 21:12 701459

Coutty, ежу понятно :)

Coutty 21-12-2007 21:58 701488

Код:

[root@localhost coutty]# "ежу понятно"
bash: ежу понятно: command not found

Не зачищает=(

ruslandh 21-12-2007 23:00 701518

Есть один способ - перед операцией делаем в смонтированном разделе
dd if=/dev/zero of=probka.img
rm probka.img

Coutty 22-12-2007 09:45 701653

Что это?
Из /dev/zero, видимо, берутся нули и записываются в файл probka.img на раздел. Потом этот файл удаляется, а нули остаются. Правильно?
Здорово))

ruslandh 22-12-2007 09:57 701657

Coutty, правильно :)

mar 24-12-2007 01:10 702641

Coutty,
таким же образом, кстати, (по крайней мере во FreeBSD, но по-моему и в Linux тоже) готовится место для дополнительного, или нового swap-раздела.

Coutty 24-12-2007 09:35 702733

mar, а зачем? Ведь он всё равно будет перезаписан.


Время: 16:09.

Время: 16:09.
© OSzone.net 2001-