upgrade Fedora 15 до Fedora 16 (Verne): GRUB 2
2 мин чтения
Fedora 16 вышла еще 8 ноября, а у меня руки дошли только сейчас. Обновлялся, как и до пятнадцатой, через preupgrade. Главная перемена в шестнадцатой для меня — загрузчик: вместо старого GRUB теперь GRUB 2.
Перед обновлением
Сначала обновил сам preupgrade. На форумах жаловались, что старые версии при переходе на шестнадцатую оставляют загрузчик в непонятном состоянии, и машина после перезагрузки не грузится. Так что:
su -c 'yum update preupgrade'
su -c 'preupgrade'
Место в /boot проверил, как обычно. Скачивание шло часа полтора, потом перезагрузка и установка.
GRUB 2
После обновления меню загрузки выглядит иначе, и привычного файла /boot/grub/grub.conf больше нет. Конфиг теперь /boot/grub2/grub.cfg, и руками его править не надо: он собирается командой из настроек в /etc/default/grub и скриптов в /etc/grub.d/.
su -c 'grub2-mkconfig -o /boot/grub2/grub.cfg'
Команду надо запускать после каждой правки настроек. Ядра при обновлении добавляются в меню сами.
Windows рядом
У меня на этом диске еще Windows 7, ставил ее рядом с Fedora. Боялся, что пункт для нее пропадет, но grub2-mkconfig нашел ее сам: это делает os-prober. Если он у вас не стоит, Windows в меню не будет:
su -c 'yum install os-prober'
su -c 'grub2-mkconfig -o /boot/grub2/grub.cfg'
Время, сколько меню ждет выбора, и пункт по умолчанию — в /etc/default/grub, параметры GRUB_TIMEOUT и GRUB_DEFAULT. После правки снова grub2-mkconfig.
Если не грузится
Если после обновления вместо меню пусто или ругается на загрузчик, грузимся с установочного диска в режиме восстановления, делаем chroot /mnt/sysimage и ставим GRUB 2 заново:
grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg
/dev/sda — диск, а не раздел. Мне не понадобилось, но записал, чтобы потом не искать.
Старый GRUB был проще: открыл файл, поправил строчку. Теперь между мной и меню еще одна команда, зато пункты для ядер и соседних систем больше не надо дописывать руками.