LinuxForum.Fans
Тема

Нужен инструмент для восстановления системного раздела из бэкапа

Автор: u________43 12 сообщений 1414 просмотров
15.02.2015 17:16 · отредактировано #414360

В общем суть.
Нужна заготовка iso-образа для оптического диска, с возможностью редактирования исполняемых команд.

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



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

Думаю, на линуксе это будет более технологично выглядеть.

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

ПС. За основу решил взять дистр Puppy-420-ru-k2.6.25.16-opera-v6
Отредактировал isolinux.cfg .
Оставил один вариант загрузки по умолчанию и запретил запуск иксов.

text
PROMPT 0
TIMEOUT 10
DEFAULT vesamenu.c32

MENU WIDTH 36 MENU MARGIN 0 MENU ROWS 15 MENU HELPMSGROW 15 MENU TIMEOUTROW 22 MENU TABMSGROW 24 MENU CMDLINEROW 26 MENU HSHIFT 40 MENU VSHIFT 2 MENU AUTOBOOT ‡ Јаг§Є   зсвбп зҐаҐ§ # ᥪг¤... MENU TABMSG Ќ ¦¬ЁвҐ [Tab] ¤«п Ё§¬ҐҐЁп Ї а ¬Ґва®ў

LABEL xconf MENU LABEL Puppy KERNEL vmlinuz APPEND initrd=initrd.gz pfix=ram pfix=nox pmedia=cd

16.02.2015 10:05 #414460
"Невский" написал:
ПС. За основу решил взять дистр Puppy-420-ru-k2.6.25.16-opera-v6

Слишком жирно. А так пишите скрипт, который будет определять имя устройства жёсткого диска, если вы уверены, что диск один и 100% это /dev/sda, то можете пропустить этот момент. Далее пишите скрипт, который будет определять директорию с образом диска и имя образа диска. Ну а для создания и восстановления образа можете использовать partimage, ну и последними командами у вас будет что-то вроде:

text

partimage restore /dev/sda /mnt/cdrom/image/image.img
partimage restmbr /dev/sda /mnt/cdrom/image/image.img
reboot

Ну и затем помещайте этот скрипт на запуск.

Удачи.

16.02.2015 17:28 #414515
"Невский" написал:
ПС. За основу решил взять дистр Puppy-420-ru-k2.6.25.16-opera-v6
"kostik87" написал:
Слишком жирно.

Рассмотрю любой другой, который умеет работать, с NTFS в том числе.
В идеальном случае, был бы вариант, чтоб можно редактировать скрипты открыв образ в UltraISO.
Без графики и других запросов.

Загрузка с CD и исполнение скрипта.

16.02.2015 19:39 #414533
"Невский" написал:
Рассмотрю любой другой, который умеет работать, с NTFS  в том числе.

Вы же сказали, что вам нужно, чт о бы восстановление образа было автономно, воткнул диск, загрузился, а он сам восстановил образ? В таком случае вам подойдёт любой, в частности partimage умеет работать с NTFS. Только напшите скрипт, который будет делать описанные выше действия.

"Невский" написал:
был бы вариант, чтоб можно редактировать скрипты открыв образ в UltraISO.

Напишите, кто же запрещает, только как минимум один скрипт придётся поместить в образ системы, он будет вызывать скрипты, которые вы, к примеру, расположите в директории backup в корне диска, вот эти скрипты, скорее всего, вы сможете редактировать через ulraiso.

"Невский" написал:
Загрузка с CD и исполнение скрипта.

Можете донастроить выбранный вами, ну либо самостоятелно собрать минимальную систему на базе busybox, которя будет делать описанные действия.

А можете вообще размещать образ диска и конфиги, например на NFS или SAMBA ресурсе, собрать одну универсальную систему, которая, скажем по mac адресу сетвеой карты будет определять какой образ ей разворачивать на этот ПК.

В таком случае образ вы сможете выкладывать просто на сетевой ресурс туда же выкладывать и конфиги, которые будет обрабатывать скрипт в образе.

В общем, вариантов у вас много, но насчёт наличия готовой системы под ваши требования я сомневаюсь.

Пробуйте. Удачи.

16.02.2015 20:13 #414535

Спасибо за направление, будем пробовать.

19.02.2015 09:01 #414801
"kostik87" написал:
1.Слишком жирно.
2.А так пишите скрипт, который будет определять имя устройства жёсткого диска, если вы уверены, что диск один и 100% это /dev/sda, то можете пропустить этот момент.
3.Далее пишите скрипт, который будет определять директорию с образом диска и имя образа диска.
4.Ну а для создания и восстановления образа можете использовать partimage, ну и последними командами у вас будет что-то вроде

1. согласен
2. mount по UUID
3. не понял, зачем? mount imasge.iso /mnt/cdrom решает-же.
4. просто смонтировать и запустится. Ну а если нужны извращений, то ещё и скопировать таром. Но непонятно, на кой ляд тогда iso?

19.02.2015 09:40 #414807
"drBatty" написал:
2. mount по UUID

Зачем? Нужно найти имя устройства диска, что бы на него развернуть образ, находящийся на cd - dvd диске.

"drBatty" написал:
3. не понял, зачем? mount imasge.iso /mnt/cdrom решает-же.

Он с этого iso грузится и если у него минимальная система, которая целиком помещается в initramfs, то ему нужно написать скрипт, который будет находить устройство привода, монтировать допустим в /mnt/cdrom и уже оттуда брать образ.

"drBatty" написал:
4. просто смонтировать и запустится. Ну а если нужны извращений, то ещё и скопировать таром.

Ну а если у него там windows?

"drBatty" написал:
Но  непонятно, на кой ляд тогда iso?

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

19.02.2015 09:52 · отредактировано #414810

"kostik87" написал:
Нужно найти имя устройства диска
дык и пропишите в fstab по UUID.

"kostik87" написал:
ему нужно написать скрипт, который будет находить устройство привода, монтировать допустим в /mnt/cdrom и уже оттуда брать образ.
смысл такого извращения?

"kostik87" написал:
Ну а если у него там windows?
в каком образе? Я уже запутался.

"kostik87" написал:
Что бы пользователь воткнул диск на котором находится мини система для восстановления образа и сам образ, загрузился с него, подождал пока закончится восстановление и получил рабочий комп, не выполняя ни каких других действий.
а, ну тогда dd нужно, и ещё один скрипт, который будет выполнять dd. Зачем использовать для таких образов ISO-9660 ?

вот здесь всё есть http://mirror.yandex.ru/slackware/slackware-current/isolinux/
19.02.2015 10:05 #414811
"drBatty" написал:
дык и пропишите в fstab по UUID.

Что прописать в fstab? Ты тему читал? Ему нужна система, которая будет разворачивать образ диска на диск того компьютера, на котором эта система запущена. С чего ты решил, что он будет разворачивать Linux или FreeBSD, к примеру? Из шапки темы с большой долей вероятности можно предположить, что разворачивать он будет посекторный образ диска и возможно там даже Windows.

"drBatty" написал:
смысл такого извращения?

Ну вот ты собрал систему, которая состоит из ядра и initramfs, т.е. она вся в памяти. Т.е. привод при запуске системы у тебя не монтируется. Далее тебе с привода нужно считать образ диска и развернуть его на жёсткий диск. А это значит тебе нужно в начале найти устройство привода и смонтировать его. Как ты его будешь находить, по метке файловой системы на CD | DVD диске, по UUID файловой системы или попросту перебирать устройства /dev/sr0, /dev/sr1 и /dev/cd или как он там - это уже дело десятое. Ферштейн?

"drBatty" написал:
в каком образе? Я уже запутался.

Почитай шапку темы.

"drBatty" написал:
а, ну тогда dd нужно, и ещё один скрипт, который будет выполнять dd.

Угу и посредством dd будет снят посекторный образ вместе с нулями. Лучше уж использовать специализированные средства которые умеют создавать нормальный образ.

"drBatty" написал:
Зачем использовать для таких образов ISO-9660 ?

Потому, что так надо ТС. Насколько я понял его идею, ему нужна система, которая будет загружаться с CD / DVD диска и разворачивать на жёсткий диск компьютера на котором она загрузилась образ жёсткого диска, находящийся на этом же CD / DVD диске. Всё это в автоматическом режиме, пользователю нужно только вставить диск в привод и перезапустить систему.

19.02.2015 11:44 #414830

"kostik87" написал:
Ну вот ты собрал систему, которая состоит из ядра и initramfs, т.е. она вся в памяти. Т.е. привод при запуске системы у тебя не монтируется. Далее тебе с привода нужно считать образ диска и развернуть его на жёсткий диск. А это значит тебе нужно в начале найти устройство привода и смонтировать его. Как ты его будешь находить, по метке файловой системы на CD | DVD диске, по UUID файловой системы или попросту перебирать устройства /dev/sr0, /dev/sr1 и /dev/cd или как он там - это уже дело десятое. Ферштейн?
т.е. это должно работать с любым компьютером? Т.е. разворачивать (неизвестную)ОС на каждом из Over9000 компов?

"kostik87" написал:
Насколько я понял его идею, ему нужна система, которая будет загружаться с CD / DVD диска и разворачивать на жёсткий диск компьютера на котором она загрузилась образ жёсткого диска, находящийся на этом же CD / DVD диске.
почему система, загрузившись в память, не может смонтировать этот CD по метке? А туда положить нашу минимальную, и чужеродную?

Т.е. идея в том, что cd(и не только) может у себя хранить любые файлы, в т.ч. и образ какой-нить ОС. И тут не важна, какая ФС на CD, можно взять флешку и записать в btrfs.
19.02.2015 13:08 #414874
"drBatty" написал:
почему система, загрузившись в память, не может смонтировать этот CD по метке?

Может, но скрип-то всё равно писать надо или в /etc/fstab прописать монтирование.

"drBatty" написал:
можно взять флешку

Можно.

"drBatty" написал:
записать в btrfs.

Это уже перебор.

Войдите или зарегистрируйтесь, чтобы ответить.