Автор Тема: Grub2 не видит Windows XP  (Прочитано 4545 раз)

Оффлайн S3R_sqrT

  • Завсегдатай
  • *
  • Сообщений: 323
Grub2 не видит Windows XP
« : 13.10.2015 00:31:10 »
На диске есть три локальных: С,D,E. На E установлен Windows XP. Ставлю на С Simply Linux (форматируя в ext4, на ntfs или fat32 ведь нельзя, правильно?).
Grub2 не видит Windows XP.
Поискал по темам - не уверен что делать.
Есть четкая и надежная инструкция как исправить?

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Grub2 не видит Windows XP
« Ответ #1 : 13.10.2015 05:26:56 »
https://www.altlinux.org/Grub
https://www.altlinux.org/Загрузчик_GRUB_и_Windows

Цитировать
Иногда случаются ситуации, когда линуксовый загрузчик вроде бы прописал возможность загрузить windows, но система не загружается, для этого необходимо в консоли от пользователя root выполнить команду:

grub-mkconfig -o /boot/grub/grub.cfg

утилита сканирует разделы на диске и добавит обнаруженные операционные системы в меню загрузки.

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Grub2 не видит Windows XP
« Ответ #2 : 13.10.2015 05:28:30 »
На E установлен Windows XP.
E - в понятных мне терминах - это какой раздел ? - /dev/sda7 ?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Grub2 не видит Windows XP
« Ответ #3 : 13.10.2015 06:40:40 »
А в системе есть?
# rpm -q os-prober
os-prober-1.61-alt1
# rpm -qi os-prober|tail -n 4
Description :
This is a small package that may be depended on by any bootloader
installer package to detect other filesystems with operating systems on
them, and work out how to boot other linux installs.
# apt-cache depends grub2-pc grub2-common|grep prober
#

Оффлайн sirares

  • Давно тут
  • **
  • Сообщений: 194
Re: Grub2 не видит Windows XP
« Ответ #4 : 13.10.2015 08:03:41 »
На диске есть три локальных: С,D,E. На E установлен Windows XP. Ставлю на С Simply Linux (форматируя в ext4, на ntfs или fat32 ведь нельзя, правильно?).
Grub2 не видит Windows XP.
На диске есть три локальных: С,D,E т.е. один физический диск - три раздела, так?
Windows XP: может стоять на разделе Е: (предположительно sda3 или sda5, 6), но загрузчик windows XP (ntldr, boot.ini, ntdetect.com) должен быть на разделе с которого загружатся компьютер(имеет флаг boot, обычно это sda1) - вы его отформатировали
Цитировать
Ставлю на С Simply Linux (форматируя в ext4, на ntfs или fat32 ведь нельзя, правильно?).
и таким образом уничтожили загрузчик, естественно grub увидел раздел с системными данными windows и прописал раздел в конфигурацию, но не находит загрузчик и молчит...
Для начала попробуйте с дистрибутива распаковать файлы загрузчика и подсунуть их на диск - Е, скопировать стандартный boot.ini (возможно придется отредактировать его в соответствии с разделами - там другие disk, rdisk, partition) и выполнить то, что советовали Speccyfighter и ruslandh, но первую загрузку желательно производить в safe mode (F8) смотреть что получится, не факт что что-то будет... увы - смотрите - пишите что получается. И главное - не торопитесь переустанавливать, сначала сохраните ВАШИ данные. Восстановить загрузку можно почти всегда.
Еще вопрос что было на С до форматирования W7-10?

Инфлэйм

  • Гость
Re: Grub2 не видит Windows XP
« Ответ #5 : 13.10.2015 08:39:39 »
Когда-то была такая бага, кстати, в р6 была точно: чтобы загрузчик увидел ХР, нужно просто перезагрузиться.
Ну и для верности, скиньте в студию вывод от рута:
fdisk -lcat /etc/sysconfig/grub2
а также попробуйте переконфигурировать загрузчик, неплохо бы и выхлоп сюда
grub-mkconfig -o /boot/grub/grub.cfg

Оффлайн S3R_sqrT

  • Завсегдатай
  • *
  • Сообщений: 323
Re: Grub2 не видит Windows XP
« Ответ #6 : 15.10.2015 15:28:42 »
На всяк случай скопировал все загрузочные файлы ХР на диск Е (где виндовс).
grub-mkconfig -o /boot/grub/grub.cfg Windows XP на /dev/sda6 не увидел.

/dev/sda1 загрузочный Система-Linux
/dev/sda2 Система-W95 расшир. (LBA)
/dev/sda5 Система-HPFS/NTFS/exFat
/dev/sda6 Система-HPFS/NTFS/exFat

Что за W95 расшир. (LBA) ??

Так что есть C,D,E разделы на одном физическом диске (и 8мб не форматированного в конце диска). На С - Линукс с ексФат, D - NTFS с данными, E - была установлена Виндовс до установки Линукса. (изначально, при установке виндовс с и е были отформатированы в нтфс).
grub-mkconfig -o /boot/grub/grub.cfg только находит два образа ядра.

Понятно что загрузочные файлы виндовс хранятся на С диске и теперь их нет. Но неужели нет способа обойти это требование для загрузки виндовс?

os-prober в Synaptic есть.

А если попробовать с диска восстановления MBR исправить, оно ведь Grub нарушит правильно? (+ на диске С сейчас ext4 а не ntfs...)
« Последнее редактирование: 15.10.2015 20:08:53 от S3R_sqrT »

Оффлайн S3R_sqrT

  • Завсегдатай
  • *
  • Сообщений: 323
Re: Grub2 не видит Windows XP
« Ответ #7 : 15.10.2015 20:31:06 »
теперь при перезагрузке в меню увидел и Windows XP!!! (в добавок к Линукс, доп.парам и мемтесту) - видимо, grub-mkconfig -o /boot/grub/grub.cfg сделало свое дело!

Но вот проблема: когда выбираю, я вижу только черный экран и мигающую каретку. Что там не хватает?

Вроде и на другом компьютере тоже, только там на С виндовс8 а на Е Линукс.
« Последнее редактирование: 15.10.2015 23:40:28 от S3R_sqrT »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 251
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Re: Grub2 не видит Windows XP
« Ответ #8 : 15.10.2015 23:28:34 »
Что там не хватает?
смотрите конфиги самого Windows, возможно он не находит свой диск C

Инфлэйм

  • Гость
Re: Grub2 не видит Windows XP
« Ответ #9 : 16.10.2015 03:20:04 »
Уверены, что винду не отправляли в сон? Если да, то восстановите загрузчик винды,
Ой, тысячу лет этого не делал: нужно загрузиться с установочного диска винды и выбрать пункт "Восстановление системы" , загрузившись в "Консоль восстановления" выбираете нужную уиндовс и даете команду
Bootrec.exe /FixMbr(Для верности, спросите у дядьки гугла, как делать восстановление загрузчика ХРюшы).
После этого обязательно загрузитесь в нее и проверьте ее диски на ошибки. если мне не изменяет мой склероз, это делается в свойствах локальных дисков. Проверьте на ошибки каждый локальный диск средствами самой виндовс. Когда закончите с этим, восстановите линуксовый загрузчик. Тут тоже дело на пару глотков кофе: вставляем загрузочный диск и выбираем пункт "Восстановление системы". После приглашения консоли
#даем команду
fixmbrrebootЕсли все сделано правильно, должно заработать.

И пожалуйста, помните: перед тем, как загружаться в линукс, не отправляйте винду в сон.
« Последнее редактирование: 16.10.2015 03:31:04 от Инфлэйм »

Оффлайн S3R_sqrT

  • Завсегдатай
  • *
  • Сообщений: 323
Re: Grub2 не видит Windows XP
« Ответ #10 : 16.10.2015 12:05:47 »
Но если я восстановлю MBR,Grub ведь отойдет на второй план...? (Не хочу видеть темный виндовый загрузчик выбора ОС) Да и диск С в ext4 форматирован - там ничего не повредиться?

А как быть со вторым вариантом, где вин8 на С и вначале показывается виндовый загрузчик, где виндовс нормально грузиться, но если там выбрать линукс, загрузиться grub, если в нем выбрать вин8 - темный экран...
« Последнее редактирование: 16.10.2015 12:42:49 от S3R_sqrT »

Оффлайн sirares

  • Давно тут
  • **
  • Сообщений: 194
Re: Grub2 не видит Windows XP
« Ответ #11 : 16.10.2015 13:50:23 »
Цитировать
Но если я восстановлю MBR,Grub ведь отойдет на второй план...?
Вы убьете граб и только! Бывший диск С так и останется sda1 в ext4. Там не только mbr восстанавливать нужно, чтобы Ваша конфигурация windows загрузилась без правки boot.ini и других *.ini нужно чтоб диск С(sda1) был совместимой с виндовс ХР файловой системой - fat, ntfs; имел флаг boot; и содержал ntldr, boot.ini, ntdetect.com. -на ext4 они не видны. ХР была на двух разделах - С: загрузчик, Е: система. Чтобы восстановить старую конфигурацию - придется форматировать С в ntfs, восстанавливать mbr, ставить флаг boot, копировать файлы загрузчика.
В grub2 не настолько силен - не нравится он мне, а вот grub4dos может адресивать любые диски и загрузочные файлы из простого текстового меню без компиляции.
Если Вы поместите указанные файлы на диск Е и в grub4dos дадите такой menu.lst, например загружаясь с флешки или передавая управление grub4dostimeout 10
default /default
title Windows XP
find --set-root /ntldr
chainloader /ntldr
boot
windows попытается загрузиться, но нужно править системные ini, например boot.ini такой:[boot loader]
timeout=3
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional RU" /fastdetect /NoExecute=OptOut
Ваш boot.ini был другим т.к. другая конфигурация дисков. здесь управляющие параметры multi(0)disk(0)rdisk(0)partition(1)\WINDOWS соотвестсвуют первому разделу первого физического диска. Но Вы все удалили(отформатировали)... В grub и grub4dos можно менять нумерацию дисков(подстановкой), но у вас все-равно ХР была на двух разделах - С: загрузчик, Е: система. Думайте что вам важнее...
Судя по всему что-то придется переустанавливать(сохраните пользовательские данные) либо виндовс, либо линукс. Почитайте как правильно делать дуалбут,  на том же рутрекер, подумайте.
Цитировать
А как быть со вторым вариантом, где вин8 на С и вначале показывается виндовый загрузчик, где виндовс нормально грузиться, но если там выбрать линукс, загрузиться grub, если в нем выбрать вин8 - темный экран...
Вообще-то данный вариант рабочий, только grub тогда обычно ставят на раздел, а не в mbr. Но опять-таки вы уже убили загрузчик ХР. И линукс не ставят вместо виндовс при дуалбуте, а отрезают кусочек пространства и ставят на него. Если вместо - то только вместо, без возможности возврата.
Цитировать
Но вот проблема: когда выбираю, я вижу только черный экран и мигающую каретку. Что там не хватает?
ntldr, boot.ini, ntdetect.com.
Цитировать
Что за W95 расшир. (LBA) ??
Расширенный(дополнительный) раздел sda2, а внутри него sda5, sda6 - вторичные. Логика такая sda1-sda4 первичные(Primary), sda5-sdax вторичные, они могут распологаться внутри первичного раздела, помеченного как расширенный(Extented).

Оффлайн S3R_sqrT

  • Завсегдатай
  • *
  • Сообщений: 323
Re: Grub2 не видит Windows XP
« Ответ #12 : 16.10.2015 14:53:56 »
А может просто из раздела С сделать 2 раздела: первый С - 30Мб, Второй - нетронутый Линукс, просто чуть сдвинутый по диску что бы быть следующим разделом.
Вроде же есть программы для такого, для виндовс точно, а для линукса?
То есть я сдвигаю биты уже существующего Линукса и делаю малый ntfs раздел чисто для загрузочных целей, и, затем, восстанавливаю виндовс мбр и граб...?

А такие вещи как Ext2IFS и Ext2Fsd, например, они ведь на уровне драйвера дают ХР возможность видеть ext4 ф.с. ... Может, если скопировать такие драйвера в папку Виндовса, она увидит на разделе С - ext4 нужные ей файлы boot.ini и т.п....?
« Последнее редактирование: 16.10.2015 14:58:58 от S3R_sqrT »

Инфлэйм

  • Гость
Re: Grub2 не видит Windows XP
« Ответ #13 : 16.10.2015 16:11:40 »
Но если я восстановлю MBR,Grub ведь отойдет на второй план...?
Вы читаете очень невнимательно. Да и потом, восстановить груб после всего - плевое дело, у вас это займет минуту-две.

Инфлэйм

  • Гость
Re: Grub2 не видит Windows XP
« Ответ #14 : 18.10.2015 07:51:56 »
boot.ini
Этот файл есть только в ХР. В 7 и 8 есть что-то другое, особо не ковырял, но этого файла в 7 и 8 точно нет. Несколькими постами выше я дал конкретное решение (в пору, когда на машине имел зоопарк из ОСей, именно так решалось дело). Просто бывает, что после установки линукса поверх винды, разделы с ntfs отказываются нормально функционировать. И именно восстановление виндового загрузчика с последующей проверкой средствами винды этих самых виндовых разделов, решает проблему.

Кроме того, ТС так и не скинул в студию вывод cat /etc/sysconfig/grub2, который бы скорее всего подтвердил мои слова, что граб нормально видит все ОС, но ntfs хочет небольшого ремонта.
« Последнее редактирование: 18.10.2015 07:54:06 от Инфлэйм »