Несколько недель назад я настроил ноутбук с двойной загрузкой для запуска Xubuntu 10.4 на третьем разделе моего диска (т. Е. Я должен был указать место установки вручную). Все было хорошо, пока я не установил кучу автоматических обновлений (включая новое ядро), которые были обнаружены после того, как Wifi наконец заработал. После перезагрузки Grub больше не загружался в Xubuntu (что он делал несколько раз раньше), а просто отображал подсказку. Мне удалось починить систему, используя live CD и хороший час чтения в Интернете.
В течение нескольких недель все было хорошо, включая автоматические обновления. Вчера получил новое ядро через автоматические обновления. И угадай что? Ноутбук отказался загружаться впоследствии.
Мне кажется, что каждое обновление ядра делает мою систему не загружаемой. Как я могу предотвратить это, кроме очевидного «Не устанавливать обновления»? Что-нибудь еще, что я должен осмотреть или контролировать в этой системе? Или мои выводы об обновлении ядра совершенно неверны, и я должен искать что-то еще, вызывающее эти симптомы?
РЕДАКТИРОВАТЬ: Еще некоторые подробности, как указано в комментариях: я не запускал Windows между обновлением и сбоем так что для меня это, похоже, связано только с Xubuntu. Grub - это Grub2 (версия 1.98 что-то). /boot/grub/grub.cfg выглядит следующим образом:
# # DO NOT EDIT THIS FILE # # It is automatically generated by /usr/sbin/grub-mkconfig using templates # from /etc/grub.d and settings from /etc/default/grub # ### BEGIN /etc/grub.d/00_header ### if [ -s $prefix/grubenv ]; then load_env fi set default="0" if [ ${prev_saved_entry} ]; then set saved_entry=${prev_saved_entry} save_env saved_entry set prev_saved_entry= save_env prev_saved_entry set boot_once=true fi function savedefault { if [ -z ${boot_once} ]; then saved_entry=${chosen} save_env saved_entry fi } function recordfail { set recordfail=1 if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi } insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 if loadfont /usr/share/grub/unicode.pf2 ; then set gfxmode=640x480 insmod gfxterm insmod vbe if terminal_output gfxterm ; then true ; else # For backward compatibility with versions of terminal.mod that don't # understand terminal_output terminal gfxterm fi fi insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 set locale_dir=($root)/boot/grub/locale set lang=de insmod gettext if [ ${recordfail} = 1 ]; then set timeout=-1 else set timeout=10 fi ### END /etc/grub.d/00_header ### ### BEGIN /etc/grub.d/05_debian_theme ### set menu_color_normal=white/black set menu_color_highlight=black/light-gray ### END /etc/grub.d/05_debian_theme ### ### BEGIN /etc/grub.d/10_linux ### menuentry 'Ubuntu, mit Linux 2.6.32-24-generic' --class ubuntu --class gnu-linux --class gnu --class os { recordfail insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 linux /boot/vmlinuz-2.6.32-24-generic root=UUID=c1550ae8-66af-414c-874d-15cb43176ba5 ro quiet splash initrd /boot/initrd.img-2.6.32-24-generic } menuentry 'Ubuntu, mit Linux 2.6.32-24-generic (Wiederherstellungsmodus)' --class ubuntu --class gnu-linux --class gnu --class os { recordfail insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 echo 'Linux 2.6.32-24-generic wird geladen …' linux /boot/vmlinuz-2.6.32-24-generic root=UUID=c1550ae8-66af-414c-874d-15cb43176ba5 ro single echo 'Initiale Ramdisk wird geladen …' initrd /boot/initrd.img-2.6.32-24-generic } menuentry 'Ubuntu, mit Linux 2.6.32-21-generic' --class ubuntu --class gnu-linux --class gnu --class os { recordfail insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 linux /boot/vmlinuz-2.6.32-21-generic root=UUID=c1550ae8-66af-414c-874d-15cb43176ba5 ro quiet splash initrd /boot/initrd.img-2.6.32-21-generic } menuentry 'Ubuntu, mit Linux 2.6.32-21-generic (Wiederherstellungsmodus)' --class ubuntu --class gnu-linux --class gnu --class os { recordfail insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 echo 'Linux 2.6.32-21-generic wird geladen …' linux /boot/vmlinuz-2.6.32-21-generic root=UUID=c1550ae8-66af-414c-874d-15cb43176ba5 ro single echo 'Initiale Ramdisk wird geladen …' initrd /boot/initrd.img-2.6.32-21-generic } ### END /etc/grub.d/10_linux ### ### BEGIN /etc/grub.d/20_memtest86+ ### menuentry "Memory test (memtest86+)" { insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 linux16 /boot/memtest86+.bin } menuentry "Memory test (memtest86+, serial console 115200)" { insmod ext2 set root='(hd0,5)' search --no-floppy --fs-uuid --set c1550ae8-66af-414c-874d-15cb43176ba5 linux16 /boot/memtest86+.bin console=ttyS0,115200n8 } ### END /etc/grub.d/20_memtest86+ ### ### BEGIN /etc/grub.d/30_os-prober ### menuentry "Microsoft Windows XP Professional (on /dev/sda1)" { insmod ntfs set root='(hd0,1)' search --no-floppy --fs-uuid --set 883cb1b73cb1a09c drivemap -s (hd0) ${root} chainloader +1 } ### END /etc/grub.d/30_os-prober ### ### BEGIN /etc/grub.d/40_custom ### # This file provides an easy way to add custom menu entries. Simply type the # menu entries you want to add after this comment. Be careful not to change # the 'exec tail' line above. ### END /etc/grub.d/40_custom ###
Каждый раз, когда в процессе обновления программного обеспечения добавляется новое ядро, конфигурация grub обновляется. Поэтому информация, которую запрашивал Хавьер Ривера, очень важна. Соответствующий конфигурационный файл - /boot/grub/grub.cfg
- если вы его не нашли, ищите /boot/grub/menu.lst
. Также вы можете запустить update-grub
и проверить, нет ли ошибок - пожалуйста, опубликуйте результат это тоже. Однако если update-grub успешен, то обходным решением будет запускать его вручную каждый раз, когда ваши обновления включают новое ядро.
Я имел, это происходит на новой Ubuntu 12.10 (настольная) установка на ноутбуке. Загруженный штраф системы после начальной установки, и затем после получения обновления ядра (от начального набора обновлений), это прошло бы меню GRUB, загрузило бы ядро и затем черный экран, без подсказки пароля.
Кажется, что проблема связана с видео. Что я нашел, последовательно фиксирует его, но менее симпатичен, должен отредактировать/etc/default/grub и удалить quiet
и splash
опции от GRUB_CMDLINE_LINUX_DEFAULT
, и выполнение update-grub
. Если Вы уже не можете загрузиться, то, когда меню GRUB подходит, нажмите E, чтобы отредактировать Вашу командную строку GRUB и удалить те опции, то ctrl-X для начальной загрузки.
Эта ошибка предлагает пробовать plymouth:force-drm
как параметр загрузки GRUB, который заставляет его не использовать драйвер кадрового буфера ядра. Это также, казалось, работало, кроме него все еще не использовал экран-заставку, и загруженный в текстовом режиме.
Если это имеет значение мой ноутбук имеет два графических чипсета: Intel (использующий i915 драйвер ядра) и Nvidia GTX680M (все еще работающий над созданием этой ускоренной работы). Это может быть присутствие двух различных графических устройств, делает начальную загрузку недетерминированной.
Это grub не загружается, это означает, что либо его конфигурация повреждена, либо ее код был перезаписан.
Для этого могут быть следующие причины:
некоторые программы Windows перезаписывают скрытое (случайное) пространство на жестком диске. Они делают это по причинам DRM. Тем не менее, я предполагаю, что проблема возникает сразу после обновления ядра, а затем перезапуска, так что скорее всего это не так.
у вас нет свободного места на вашем разделе ubuntu (или, по крайней мере, на одном, содержащем grub). Убедитесь, что вы делаете. Я сейчас кладу свои деньги на этот.
grub auto переконфигурирует себя каждый раз, когда вы устанавливаете новое ядро. Попробуйте перенастроить его вручную и посмотрите, нет ли ошибок. Запустите sudo update-grub в терминале, чтобы сделать это. Вам нужно будет ввести свой пароль, и он выведет некоторые данные.
вы говорите, что это третий раздел вашего диска; это съемный диск? Как внешний жесткий диск или внутренний жесткий диск? В этом случае нумерация устройств может отличаться от времени установки.