Доброе утро, я хочу, чтобы grub не зависел от Windows и Linux. У меня уже есть установка grub, которая работает в /boot, но она находится в разделе linux mint. Поэтому я перешел по разным ссылкам, и вот что я сделал:

#first I mount my ext2 partition which is on sdb partition 4
sudo mount  -o rw /dev/sdb4 /mnt
#then I install grub in my partition
sudo grub-install --root-directory=/mnt /dev/sdb
sudo chmod 777 -R /mnt
#then I configure grub to have the OS list
sudo grub-mkconfig -o /mnt/boot/grub/grub.cfg
grub
# this part is supposed to make my new grub work.
root (hd1,3) # 3 is 4 - 1
setup (hd1) # 1 is 2 for sdb - 1
quit
sudo update-grub
reboot

чтобы быть уверенным, какой grub используется, я изменил grub.cfg из /root. Поэтому я перезагружаюсь, и снова используется старый grub, какой cmd отсутствует? Я также установил флаг gulp или boot boot с прежней загрузкой с помощью gparted, но раздел по-прежнему не отображается в BIOS.

Следующий текст является моей мотивацией, он не является частью описания проблемы, и вы можете перейти к этой части. Моя цель - создать раздел ext2 или лучше fat32, потому что с помощью некоторого программного обеспечения можно получить доступ к разделу ext2 из Windows, и это позволит мне создать скрипт для автоматического перезапуска Linux на Windows из-за изменения grub. Я также хочу получить доступ к физическому разделу Linux из Windows с помощью Virtualbox (это уже работает по-другому), я уже добился успеха, но мне приходится использовать iso grub, который переопределяет каждый раз, какие операционные системы у меня есть в моей системе. И я думаю, что если я пойму, как сделать grub полностью независимым, это решит мою проблему - использовать его в virtualbox.

Спасибо

2 ответа2

1

Поскольку GRUB запускается очень рано в процессе загрузки, обычно есть что-то простое, что не так, однако может быть сложно определить, что именно. Вот мои предложения:

  1. Обычно BIOS загружается с первого жесткого диска, а первый жесткий диск обычно называется sda. Какой у тебя sda? Может быть, grub-install на sdb не имеет никакого эффекта, потому что BIOS фактически загружается с sda?
  2. Старые BIOS могут иметь проблемы с чтением за пределами определенной точки на жестком диске. Если ваш раздел GRUB ближе к концу вашего диска, это может быть невидимо для BIOS.
  3. У вашей системы есть UEFI? Это сапоги совсем по-другому. Если у вас есть UEFI, вам нужно либо поработать с ним, либо перевести BIOS в режим "Legacy boot", где он будет вести себя как не-UEFI BIOS.
0

Я точно не знаю, в чем была проблема, но это рабочее решение, чтобы раздел, содержащий grub.cfg, был доступен из windows и linux.

  • создать раздел fat32 с windows и дать письмо разделу, у меня были проблемы с gparted (нет необходимости ставить раздел в начале). Затем перезагрузите Linux, новый раздел для меня - sdb8.

сначала сделайте резервную копию /boot/grub/grub.cfg, прежде чем запускать эти команды

sudo mkdir -p /media/grub2 /media/efi
sudo mount /dev/sdb8 /media/grub2
sudo mkdir -p /media/efi
sudo mount /dev/sdb1 /media/efi
sudo grub-install --no-floppy --boot-directory=/media/grub2/boot --efi-directory=/media/efi /dev/sdb

Затем восстановите резервную копию файла grub.cfg в /media/grub2/boot/grub/grub.cfg. Затем измените порядок загрузки (F2 при запуске), чтобы сначала поставить новую запись. Теперь это должно работать. У меня есть раздел fat32, содержащий grub.cfg, который я могу редактировать как в Windows, так и в Linux.

Я думаю, что это использование boot-directory вместо root-directory и тот факт, что я помещаю файл в /media вместо /mnt, я пробую без --no-floopy, это тоже работает. Я не делаю grub-mkconfig, потому что он создает не загружаемую запись и после того, как мне нужно использовать boot-repair с живым usb.

Я пытался пытался также:

  • efibootmgr: Is это команда для добавления записи в EFI, но для меня каждая модификация исчезала при перезагрузке, даже в порядке загрузки

Может быть, другой способ сделать это является использование grub-mkstandalone

Я установил слишком REFInd, Clover и OSX Сиера, может быть, это изменило мой EFI таким образом, что работает лучше.

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