На данный момент у меня есть один жесткий диск на 500 ГБ с Windows, установленной первой на одном разделе, и Ubuntu, установленной на другом разделе. Поскольку Ubuntu была установлена второй, она обнаружила раздел Windows, а Grub обеспечил двойную загрузку. Иногда после установки Ubuntu буква диска Windows C меняется на D, и Windows не загружается.
Проблема в том, что когда я хотел установить более новую версию Windows, я ее установил, и теперь система напрямую загружается в Windows. Никакой возможности загрузки в Linux не предусмотрено.
Итак, два вопроса:
1.В ситуации, когда я хочу переустановить Windows или Linux на более новую версию, как можно предотвратить игнорирование опции двойной загрузки?
2.Есть ли способ сделать так, чтобы разделы Windows и Linux вообще не знали друг о друге? Возможно, используя сторонний загрузчик, который может определять, какие операционные системы находятся на диске, и позволяет мне выбирать, в какую из них я хочу загрузиться, а также позволяет мне полностью удалить/заменить одну из операционных систем на новую, и при этом иметь возможность загрузить либо эту ОС (Windows), либо ОС Linux, которая не была затронута?
решение1
Проблема с переустановкой Windows заключается в том, что она не очень хорошо работает с другими ОС: она автоматически перезаписывает MBR, чтобы она указывала на себя, поэтому вам придется переустановить загрузчик, чтобы получить возможность двойной загрузки.
А как насчет установки загрузчика на USB-флешку? Таким образом, вы можете продолжать устанавливать/обновлять Windows без проблем, а когда вы захотите загрузить Linux, вы просто вставите USB-флешку, и она загрузит Linux. Вы даже можете изменить свой fstab в Linux, чтобы он не монтировал раздел Windows.
Установите Linux, затем из новой установки Linux выполните:
Обнулить USB
dd если=/dev/ноль из=/dev/sdd
Создайте раздел размером 128 МБ в начале USB-накопителя.
fdisk /dev/sdd ... используйте 'n' для создания раздела mkfs -t ext2 /dev/sdd1 mkdir /tmp/myusb mount /dev/sdd1 /tmp/myusb mkdir /tmp/myusb/boot
Установите grub на USB-накопитель, убедившись, что загрузочный каталог находится на USB-накопителе:
grub-install --boot-directory=/tmp/myusb/boot /dev/sdd
Отредактируйте /etc/grub.d/40_custom и добавьте следующее (msdos1 — первый раздел Windows)
menuentry "WINDOWS"{ set root='(hd0,msdos1)' chainloader +1 }
Обновите конфигурацию grub, выведя ее на USB.
обновление-grub --output=/tmp/myusb/boot/grub/grub.cfg
Большая часть этой информации взята из следующего блога: http://jarrodla.blogspot.co.uk/2014/04/hp-microserver-gen8-boot-from-5th-sata.html