Моя недавняя попытка установить мультизагрузочную систему на мою двухдисковую установку не удалась, хотя я успешно установил Ubuntu, Linux Mint и Peppermint на диск 1, после чего обновил grub. Когда я пытался установить CentOS, openSUSE и Fedora на диск 2. Я столкнулся с многочисленными проблемами.

  1. Недостаточно свободного места. Хотя я использовал GParted для форматирования обоих дисков, для установки без LVM, плюс на диске 2 не было ОС.
  2. Не видеть другие дистрибутивы в установщике.
  3. Точки крепления не принимаются.
  4. Требуется раздел /boot /efi и запрашивается таблица разделов GPT.
  5. Попытка изменить разделы через установщик, вылетела.
  6. Пробовал LMDE 2, (у Debian проблемы с моим процессором?) хотя он видел все установленные дистрибутивы (включая переустановленный CentOS 6.6, чтобы проверить, если это был я), он хотел раздел /boot /efi.

Действия.

Поскольку это были новые дистрибутивы RPM, с которыми у меня были проблемы, я решил сначала установить CentoS 7, хотя CentOS 6.6 ранее успешно сосуществовал с моими старыми настройками BIOS и sudo update-grub. В частности, openSUSE, есть ли подсказки, чтобы улучшить мои шансы на чистую установку. Я думаю, что я разработал причуды CentOS и Fedora.

  1. Удалите все. Для свежей установки.
  2. Переформатируйте оба диска с помощью GPT, создав для каждого диска два раздела с меткой fat32 /boot /efi. Это перебор или необходимость?
  3. Затем создал /, /home разделы с ext4 и linux-swap разделом, для моей новой ручной установки, не LVM.
  4. Проверьте BIOS и измените настройки с Legacy на UEFI.
  5. Установите CentOS 7, после преодоления недостатков места и причуд точки монтирования, которые были /boot /efi, затем /home, затем / и swap.
  6. Запустите команду [-d / sys / firmware /efi] && echo "Установлено в режиме UEFI" || echo "Установлен в устаревшем режиме" = Установлен в режиме UEFI.

Поскольку дистрибутивы на основе Ubuntu и Ubuntu в основном используют Debian в качестве своей базы, в настоящее время еще не внедряя systemd, весьма вероятно, что они последуют его примеру в ближайшем будущем, и мне нужно адаптироваться сейчас.

Chainloader.

Не то, с чем у меня был большой опыт, последний раз, когда я пробовал это, sudo update-grub удалил это. Итак, веб-сафари позже, я нашел несколько ощутимых отправных точек и вызвал правильные (новые) термины для CentOS 7, где grub2-mkconfig -o /boot/grub2/grub.cfg похож на sudo update-grub. Затем "etc /grub.d /40_custom", чтобы открыть файл gedit, или, как я думал, произойдет, чтобы отредактировать пункт меню # 40.

Терминал.

На терминале я могу войти в мой загрузчик цепей после # ...? Я не уверен в сценарии ниже, и был бы признателен за опытный взгляд на это.

[root@localhost tony]# /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.
[root@localhost tony]#

#DISK 1
#
# for CentOS-7
menuentry "My custom boot entry" {
set root= '(hd0,2)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for openSUSE
"openSUSE-13.2" {
set root='(hd0,5)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Fedora
"Fedora-22" {
set root='(hd0,8)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
#DISK 2
#
# for Ubuntu
"Ubuntu-14.04.2" {
set root='(hd1,2)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Linux Mint
"Linuxmint-17.1" {
set root='(hd1,5)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}
#
# for Peppermint
"Peppermint-Five" {
set root='(hd1,8)'
linux /boot/vmlinuz-linux
initrd /boot/initramfs-linux.img
}

Резюме.

Это необходимо для перехода из режима Legacy в режим UEFI, использования таблиц разделов GPT, создания двух разделов /boot /efi для обоих дисков. Chainloader, неуверенный в себе, нуждается в руководстве, чтобы, надеюсь, сделать безболезненную установку других дистрибутивов, которые живут в гармонии с другими.

Заранее благодарю за столь необходимую помощь по этой теме.

1 ответ1

2

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

На общий вопрос о том, как настроить менеджер загрузки для вашей сложной установки нескольких ОС, я сначала посоветую вам не создавать такую сложную установку. Если возможно, вы должны использовать одну загрузку и использовать виртуализацию (VMWare, VirtualBox, KVM/QEMU и т.д.) Для работы с несколькими операционными системами. При таком подходе гораздо меньше проблем, чем при попытке управлять полдюжиной разных ОС на одном компьютере.

Если вам нужно загружать несколько операционных систем, IMHO GRUB - это ужасное решение. Это требует сложной логики обнаружения ОС в скриптах установки. Сценарии установки любого данного дистрибутива будут хорошо обрабатывать этот дистрибутив, но будут намного сложнее с другими дистрибутивами. Вместо этого вам следует рассмотреть возможность использования другого менеджера загрузки EFI. Некоторые из них доступны, как подробно описано на этой моей странице . Большинство из них требуют ручной настройки, но эта настройка будет намного проще, чем настройки, необходимые для работы GRUB. Мой собственный rEFInd , вероятно, будет самым простым в настройке для вас, так как он сканирует загрузчики и ядра Linux при каждой загрузке. Вам может понадобиться файл /boot/refind_linux.conf для большинства ваших установок, и вам может потребоваться уделить пристальное внимание файловой системе (-ам), в которой вы храните свои ядра, и убедиться, что вы устанавливаете драйверы файловой системы EFI для них, но rEFInd, вероятно, загрузит большинство или все ваши дистрибутивы с минимальными усилиями, и вам не нужно будет настраивать конфигурацию всякий раз, когда вы меняете свое ядро в любом данном дистрибутиве.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .