Я использую Lubuntu 14.04 LTS более года без (значительных) проблем. Я отложил перезагрузку после нескольких обновлений в последнее время (возможно, через 2-3 недели), и когда у меня наконец-то появилось время для перезагрузки, меня приветствовало приглашение ashbox busybox с сообщениями, указывающими, что он пытался смонтировать мои разделы RAID на /root
, которые это не могло (/dev/md127
- мой корневой раздел, управляемый через mdadm). В сообщении говорилось что-то вроде Could not find init at /sbin/init
. Это было при попытке загрузиться в ядро 3.13.0-88
К счастью, у меня была рабочая конфигурация RAID, сохраненная как «настраиваемая» запись GRUB (с версией ядра 3.13.0-57), и я смог загрузить в это, и сумел изменить определение grub.cfg для этой записи, чтобы я получил ядро 3.13.0-88. По крайней мере, это вернуло меня в мою систему, но как только команда update-grub
запустится, конфигурация будет перезаписана.
Как я могу исправить мою настройку Grub2 таким образом, чтобы она распознавала мои RAID-массивы, и чтобы установка стала постоянной даже при запуске update-grub
? Для справки, вот запись grub.cfg для неудачной загрузки:
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod part_msdos
insmod diskfilter
insmod mdraid1x
insmod ext2
set root='mduuid/dfe0e47f47757b9c579476231666f004'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='mduuid/dfe0e47f47757b9c579476231666f004' ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd
else
search --no-floppy --fs-uuid --set=root ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd
fi
linux /boot/vmlinuz-3.13.0-88-generic root=UUID=ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd ro quiet splash nomdmonddf nomdmonisw bootdegraded=true $vt_handoff
initrd /boot/initrd.img-3.13.0-88-generic
А вот запись grub.cfg для работающей пользовательской записи RAID:
menuentry 'Ubuntu (RAID)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
insmod mdraid1x
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd
else
search --no-floppy --fs-uuid --set=root ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd
fi
linux /boot/vmlinuz-3.13.0-57-generic root=UUID=ac8ee99a-72a5-4ab9-8059-bb4841d3a1fd ro quiet splash nomdmonddf nomdmonisw nomdmonddf nomdmonisw bootdegraded=true $vt_handoff
initrd /boot/initrd.img-3.13.0-57-generic
Любые предложения был бы очень признателен.
Хорошо - похож на все, что я должен был сделать, был повторно выполнен update-grub
. grub.cfg запись, которую я отправил в своем вопросе, была уже зафиксирована самим grub2 - что-то, должно быть, разложилось во время одного из обновлений. Первоначально, поврежденная grub.cfg запись показала root=/dev/md127
вместо root=UUID=...
строка. Вышеупомянутое grub.cfg загружается правильно. Issue решен.