Назад | Перейти на главную страницу

Помогите исправить GRUB для сценария двойной загрузки linux / winxp

длинная история здесь, но в основном у меня были windows xp на sda1 aka (hd0,0) и ubuntu на sdb5 aka (hd1,4), и они нормально загружались. Что-то испортилось с ubuntu, я переустановил и попытался исправить grub ... в ходе всего этого, как мне кажется, я случайно запустил 'setup (hd0,0)' вместо 'setup (hd0)', чтобы скопировать grub.

Я пробовал исправить MBR с помощью ms-sys, но безрезультатно.

На этом этапе меню загрузки GRUB позволяет мне загрузиться в Linux, но если я попытаюсь загрузиться в WinXP, появится сообщение «GRUB loading stage2 ...», а затем снова вернется в меню загрузки GRUB.

Есть ли что-нибудь, что я могу исправить, или я облажался?

Пункт меню winxp grub:

title winxp
rootnoverify (hd0,0)
savedefault
chainloader +1

Результат команды fdisk -l:

/dev/sda1 * 1 8338 7879403 c W95 FAT32 (LBA)

/dev/sdb1 * 1 2224 17864248+ 83 Linux
/dev/sdb2 2551 3924 11036655 b W95 FAT32
/dev/sdb3 2225 2550 2618595 5 Extended
/dev/sdb5 2225 2528 2441848+ 83 Linux
/dev/sdb6 2529 2550 176683+ 82 Linux swap / Solaris

Спасибо!

Я видел это раньше. Запустив «setup (hd0,0)», вы записали часть своего раздела Windows. По сути, вам нужно выполнить три шага, чтобы исправить это. Шаги длительные и могут потребовать дополнительных исследований в зависимости от вашего опыта / уровня навыков, но это единственный способ решить эту проблему должным образом. Приложив немного терпения, вы заставите все снова работать; Обещаю.

  • Сначала загрузите компакт-диск Windows и при первом запросе нажмите «R» и войдите в консоль восстановления. В командной строке запустите chkdsk / R
  • После завершения работы chkdsk перезагрузите компьютер и снова загрузите компакт-диск Windows. На этот раз при первом запросе нажмите «Enter», чтобы установить Windows. Он должен увидеть вашу предыдущую установку и спросить вас, не хотите ли вы ее отремонтировать. (Если вы не видите это СТОП! Это означает, что ваш раздел Windows полностью заблокирован, и вы должны сделать резервную копию всего, что вы можете, прежде чем делать что-либо еще!)
  • После завершения процесса восстановления и нормальной загрузки Windows GRUB будет перезаписан. Вам нужно будет загрузить SuperGRUB диск или Live CD с вашим любимым дистрибутивом и установить GRUB в MBR.

Я думаю, вам нужно будет повторить процесс установки загрузки Windows, так как когда вы сделали setup (hd0,0), вы, вероятно, перезаписали диспетчер загрузки Windows. Используя диск Windows XP, загрузитесь в консоль восстановления (нажмите R на первом экране), затем войдите в свою установку Windows.

После входа в систему используйте fixmbr и fixboot команды для восстановления процесса загрузки Windows. Убедитесь, что вы можете загрузиться в Windows, затем восстановите GRUB как обычно.

Встроенные утилиты grub в Ubuntu и Debian могут помочь вам в этом. Я сделал это по разным причинам с Knoppix, и это здорово, но должно работать на компакт-диске Ubuntu live, если вы можете понять, как получить root-доступ. В Knoppix:

  • загрузиться с компакт-диска
  • открыть терминал и выполнить su или sudo su
  • смонтируйте свой жесткий диск в / media; # mount /dev/sda0 /media/some-mountpoint
  • chroot на диск, где вы хотите grub; chroot /media/some-mountpoint
  • бегать grub-install

Это в основном оставляет вас с установкой «только что после установки», когда установщик grub находит загрузочные образы и упорядочивает их.

Я проделал это один или два раза - погуглите и убедитесь, что вам комфортно и у вас есть резервные копии - начните с некоторых из вышеперечисленных ключевых слов или проверьте это: http://www.linuxdevcenter.com/pub/a/linux/2004/12/02/knpxhks_1.html для получения дополнительной информации.

Разве sdb3 не был бы hd1,2, раз нет sdb0?

Если у вас есть загрузочный диск XP или аналогичный, вы можете попробовать "fdisk / mbr"