LINUX.ORG.RU
решено ФорумAdmin

загрузка ядра linux-а в уже запущенной системе


0

0

есть задачка: загрузить систему с поддержкой сети, зайти по ssh, смонтировать lvm диск, на котором находится другая установленная система (тоже linux), загрузить с неё ядро и заменить им уже запущенное.

Вот последний пункт не как не могу найти как сделать.

Знаю что это осуществимо - давно читал статью в которой это использовали, но найти её сейчас не могу.

Может кто то знает как это сделать?


Ответ на: комментарий от stpg

kexec — это не замена ядра. Это как перезагрузка без участия BIOS. Так что если ты ожидаешь что после kexec у тебя по-прежнему будет примонтирован тот же lvm и будет запущен sshd — ты будешь разочарован. По сути kexec эквивалентен перезагрузке при которой конфиг grub по умолчанию грузит твоё новое ядро. И это даже не обязательно должен быть линкус, я винду через kexec загружал.

pupok ★★
()
Ответ на: комментарий от pupok

> kexec — это не замена ядра.

Пасибо за замечание. Сегодня буду разбираться. Я думаю в новом ядре в init скриптах смонтирую lvm.

Но появился новый вопрос - а корректно ли kexec отмонтирует диски до ребута в новое ядро?

stpg
() автор топика
Ответ на: комментарий от stpg

> Но появился новый вопрос - а корректно ли kexec отмонтирует диски до ребута в новое ядро?

оно вообще этим не занимается — это как кнопка Reset. Однако например Debian-овский пакет kexec-tools вроде специально для решения этой проблемы написан, там вроде есть специальный скрипт который делает всё что полагается при переходе в runlevel 6, но в последний момент когда уже всё отмаунчено и потушено он вместо перезагрузки через BIOS выполняет kexec.

pupok ★★
()
Ответ на: комментарий от pupok

> оно вообще этим не занимается — это как кнопка Reset

Ясно. И ещё раз спасибо.

stpg
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.