2

Начну с того, что попробовал все, что нашел. И все равно ничего не получалось.

Предисловие

Я конвертировал свою старую MBR в таблицу разделов GPT. Я на самом деле думал, что мне просто нужно переустановить GRUB2 и в конечном итоге Windows, и все будет хорошо. Не было Я использовал gdisk(GPT fdisk), чтобы сделать преобразование без потери данных.

проблема

Сначала моя Windows не загружалась. Затем я бы сделал ремонт BCD, где была проблема, и в итоге не смог вообще загрузиться с HDD и застрял на экране grub rescue. Пробовал полный ремонт, и каждый другой ремонт, с которым я столкнулся, тоже самое. Когда я переустанавливаю / ремонтирую GRUB, я получаю ошибку BCD при загрузке Windows.

Решения и дальнейшие проблемы

Самый очевидный - переустановить Windows. Ну, не случится. Он не будет установлен на GPT без оборудования UEFI. Защищать меня от себя, поэтому в стиле Microsoft. Я допустил ужасную ошибку и не понял, что проблема была в разделе TABLE, а не в самом разделе, а в отформатированном разделе Windows. Я не потерял ничего важного - ну, кроме Windows.

Следующим, что я попробовал, была гибридная MBR. Я предполагаю, что никто не сказал установщику Windows, так как он выдает ту же ошибку (пробовал Windows 7 и 8 оба 64-битные). Для этого я использовал меню восстановления gdisk, прошел все входы и закончил работать должным образом.

Далее была попытка установки DUET. Там, где я ожидал, что он не загрузится, из-за моего процессора AMD его даже не удалось установить. Я использовал скрипт duet-install, который я скачал вместе с файлами здесь. Сценарий всегда останавливается на одном и том же месте: Partition starts at sector 2048 . И я посмотрел на источник скрипта, он должен скоро напечатать следующую строку (он напечатал 13 строк за один раз), но ничего не происходит, в течение нескольких часов. Пробовал перезапуск, повторную загрузку, запуск с live CD и ничего. Вот весь вывод:

Установит SYSLINUX в MBR. Путь к SYSLINUX - это /usr /share /syslinux

Путь к загрузочному файлу: /home /ubuntu /Downloads /tianocore_uefi_duet_builds-tianocore_uefi_duet_installer /BootSector

Путь к UEFI DUET: /home /ubuntu /Downloads /tianocore_uefi_duet_builds-tianocore_uefi_duet_installer

Будет установлена UEFI версия UDK Целевой раздел - /dev /sda1

Создает файловую систему FAT с именем 'ESP' в целевом разделе

Целевой диск (для хранения загрузочного кода MBR) - /dev /sda Номер раздела - 1

Раздел начинается в секторе 2048

[ править ] Пробовал установить XP, но он не может отформатировать неформатированное пространство. Я попытался отформатировать его с помощью GParted для ntfs, но при установке все равно регистрируется как неформатированное пространство (и ничего кроме него). Но, если быть полностью честным - этот CD был отложен в течение долгого времени, я едва нашел его, и я понятия не имею, является ли он x64 (вероятно, не так не будет работать).

Итак, я застрял сейчас. Помогите, пожалуйста?

Кроме того, переформатирование всего жесткого диска не вариант. Windows не стоит, я бы предпочел остаться с Linux. Также преобразования обратно в MBR тоже нет, так как, насколько я читал, оно включает в себя форматирование. Кроме того, я получил 7(или 8?) разделы (5 на старых MBR, но я использовал расширенные разделы ... было грязно).

Спекуляции

MoBo: ASUS M5A78l-M LX Процессор: AMD Athlon II x3 450

Текущий обходной путь (ну, кроме obious (linux))

Я получил установку Windows 8 для запуска в VirtualBox. Это некоторый прогресс, но я не хочу зацикливаться на ВМ каждый раз, когда хочу запустить Windows.

Правки

Я играл со сценарием установки дуэта. Если я наберу какую-нибудь букву и нажму клавишу ввода, она напечатает parted: invalid token: [letter] . Если эта буква 'c', она печатает Unknown partition table type ! Aborting! что, очевидно, не так. Думаю, мне придется глубже проанализировать источник, чтобы понять причину проблемы, потому что этот сценарий - лучшее решение для меня сейчас.

Дошло до того, что скрипт перестает выполняться:ptLine= "$ {targetDisk}" print | grep "Таблица разделов". Постараюсь найти решение, пропустив проверки и установив значения, соответствующие моей системе.

Я отредактировал скрипт и удалил часть, которая не работала, и, наконец, удалось установить DUET. Или, по крайней мере, так сказано ... Я не замечаю никаких изменений в BIOS, все как в начале. Все еще не будет работать.

2 ответа2

0

Вы можете загружать Windows на GPT из BIOS, если у вас есть маленький MBR-диск, с которого вы можете загрузиться, или даже дискета. Это даже не хак и будет работать даже на 32-битной Windows.

В основном загрузитесь с установочного / ремонтного диска Windows. Просто создайте системный диск на дискете и используйте bcdboot чтобы поместить загрузочные файлы на дискету. Добавьте загрузочный сектор с bootsect . Изменение {bootmgr} device для boot Загрузиться с дискеты.

Шаги подробно здесь.

0

Я закончил преобразование обратно в MBR, используя тот же инструмент, который использовал для преобразования в GPT, и таблица разделов почти такая же, как и раньше.

Материал, который я пробовал, и может пригодиться кому-то в будущем:

Установите DUET: я рекомендую использовать это руководство, но я (очень) кратко объясню, что я сделал.

Сначала я создал новый раздел FAT32 объемом 200 МБ для EFI. Затем я скачал файлы отсюда и использовал cd, чтобы попасть в каталог, где я его распаковал. Затем я запустил chmod +x ./duet-install и ./duet-install -64 -F -s /usr/lib/syslinux -m /dev/sda1 , где /usr/lib/syslinux - это путь к вашему syslinux(по умолчанию должно быть /usr/share/syslinux , но ищите в вашей системе дополнительную информацию). Вы также можете скачать его из Интернета и скомпилировать. Напоминание : для этого нужен нос , у которого есть свои зависимости, и так как я не использовал его, я не могу с этим ничего поделать. /dev /sda1 - это путь к разделу, который вы создали ранее.

Тем не менее, сценарий не прошел бы мимо строки 275, поэтому я удалил все из строки 275 до конца внешнего потока if (который начинается в строке 276 или 277) и заменил его на tableType = "gpt".

Чтобы создать гибридную MBR: Опять же, есть руководство средней длины, которое я рекомендую здесь. Для быстрого руководства, продолжайте читать.

Я открыл gdisk и запустил его с помощью gdisk /dev/sda , попал в меню восстановления с помощью r и в меню восстановления набрал h . В ответ на приглашение я ввел разделы, которые хотел добавить в гибридную MBR, и сначала разместил раздел EFI GPT, а затем введя y . Если вам нужно , чтобы узнать номера разделов из разделов вы хотите использовать p в меню восстановления, или ваш любимый инструмент разбиения (GParted для меня). После этого я ввел шестнадцатеричные коды MBR по умолчанию (07 для ntfs) и не установил загрузочный флаг ни для одного, потому что я использую GRUB.

Итак, это все. Оба из них не дали никакого результата - без ошибок, ничего, он продолжал работать как обычный BIOS с полным GPT. Возможно, где-то там я допустил ошибку, из-за которой возникла проблема - не стесняйтесь меня поправлять.

Я надеюсь, что это кому-то поможет, но если это не так, вы всегда можете конвертировать обратно в MBR, что не должно быть болезненным, если вы изначально конвертировали MBR диск в GPT. Просто введите gdisk с вашего жесткого диска (gdisk /dev/sda для меня), введите r , Enter , g , Enter , q , Enter , Y , Enter. Если вам нужно более полное руководство, прочитайте вторую часть этой статьи

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