Я недавно обновил свой компьютер, моя новая материнская плата (ASUS M5A99X EVO) использует UEFi вместо обычной опции MBR.
У меня есть установка Ubuntu 11.10, которую я сделал, когда у меня было предыдущее оборудование (MSI MS 7267), только Ubuntu загружается нормально, и так же как и Windows 7, однако Windows 7 использует загрузку UEFI (GPT), тогда как Ubuntu использует MBR.
У меня есть мои ОС на отдельных дисках, так что GRUB2 не будет заменен загрузчиком Windows и наоборот, как я сказал, обе ОС нормально загружаются, но для этого мне нужно отключить один диск, в этом случае диск Ubuntu как это препятствует загрузке Windows.
Теперь мой вопрос: как я могу изменить / преобразовать диск Ubuntu, чтобы вместо использования MBR он использовал GPT и разрешал загрузку Windows?
Желательно без переустановки всей системы или потери каких-либо данных.
И если бы мне пришлось стереть диск, как я могу установить Ubuntu в GPT, UEFI, в каком бы режиме он ни находился?
Я использовал gdisk для преобразования из MBR в GPT, но теперь Ubuntu не может загрузиться, похоже, что grub просто не запускается.
Я переустановил ОС, и диск по умолчанию теперь GPT, но grup-pc
все еще используется вместо grub-efi
.
Как я могу сделать загрузку Ubuntu с EFI?
Ответы:
Содержание:
терминология
BIOS = базовая система ввода / вывода
(U) EFI = (унифицированный) расширяемый интерфейс встроенного ПО
MBR = основная загрузочная запись
GPT = таблица разделов GUID
UEFI / EFI / BIOS = интерфейс прошивки
MBR / GPT = Как компьютер знает (на жесткий диск), какие разделы находятся на диске и как с них загружаться.
UEFI / BIOS
Интерфейс прошивки является способом , что встроенное программное обеспечение (программное обеспечение внутри устройств) и операционной системы взаимодействуют между собой . Он инициализирует оборудование, затем запускает операционную систему и гарантирует, что драйверы операционной системы могут работать с оборудованием.
BIOS был обычным интерфейсом прошивки, который был использован. UEFI является более новым интерфейсом, который имеет несколько функций, таких как быстрая работа, наличие графического интерфейса пользователя и возможность запуска сетевой карты и получения IP-адреса. UEFI заменяет EFI. (Те, кто разрабатывал EFI, увидели, что другие делают что-то подобное, и присоединились к ним, привнося с собой идеи EFI. Затем это стало UEFI).
BIOS требует, чтобы загрузчик находился в начале диска, однако UEFI использует для этого раздел и может выбирать между несколькими загрузчиками.
MBR / GPT + GRUB
MBR представляет собой часть кода в начале диска , который содержит загрузчик (для BIOS), а также карту разделов и уникальный идентификатор диска.
Чтобы установить GRUB на диск с MBR, GRUB помещает небольшую программу в MBR для загрузки остальной части GRUB из другой части диска. (Это сделано потому, что MBR слишком мала, чтобы содержать весь GRUB). Выбранный пробел - это пробел между MBR и первым разделом, который обычно существует.
GPT - это стандарт определения разделов. Он имеет «защитную» MBR, однако это только для того, чтобы позволить компьютерам на базе BIOS загружать и останавливать инструменты, которые знают только о MBR, от попыток уничтожить GPT. Может иметь
(То, как обрабатывается GPT, зависит от того, загружается ли он с использованием BIOS (или системы UEFI в режиме эмуляции BIOS) или UEFI. Я остановлюсь на UEFI, поскольку это относится к вопросу).
Загрузчики для операционных систем хранятся в разделе под названием EFI System Partiton, который отформатирован (обычно) в FAT32. Это где GRUB установлен.
преобразование
Первый...
Мы играем с таблицей разделов, поэтому гарантированная безопасность невозможна. Это рискованная операция. Однако метод не должен терять данные.
Другие сталкиваются с этим: не используйте на Apple Mac.
В настоящее время...
Вам нужно будет сделать это на live CD (или на другой инсталляции linux, установленной на другой диск).
При работе с GPT-дисками нам нужно использовать программу, поддерживающую GPT. «GPT fdisk» - это хороший инструмент, который я буду использовать. Он может быть вызван
gptfdisk
или вgdisk
зависимости от дистрибутива (Ubuntu называет егоgdisk
). Parted (и Gparted) также поддерживает GPT, поэтому его можно безопасно использовать с GPT-дисками.Для конвертации вам необходимо:
1) Изменить размер раздела
Используйте
parted
(командную строку) илиgparted
(GUI), чтобы изменить размер первого и последнего раздела. Первый раздел должен иметь около 200 МБ до него, а последний раздел должен иметь от 1 МБ до 2 МБ (любой будет), снятый с конца.2) Конвертировать диск
Бегать
изменить устройство, которое вы хотите конвертировать
/dev/sdx
.Он должен сказать вам, что он преобразует таблицу разделов.
Теперь добавьте новый раздел, сделав его типа «система EFI». Он должен найти свободное место в начале (я предлагаю небольшое число секторов, например, 34) и автоматически использовать все свободное пространство. В примерах используется флэш-накопитель USB объемом 4 ГБ, на котором уже есть 1 раздел, с измененным размером, как указано выше.
Теперь у вас должен быть раздел EFI.
Затем выход
gdisk
Теперь используйте Gparted (или командную строку
mkfs.vfat
) для форматирования раздела как FAT32.3) Установить GRUB
Это приходит с меньшими гарантиями, что предыдущая часть, поскольку я не пробовал это сам.
Я не уверен в этом шаге, поэтому я угадаю, используя инструкции RAOF :
Вы должны решить, какую версию grub-efi установить с
Если он говорит
EFI32
установитьgrub-efi-ia32
пакет, если он говоритEFI64
установитьgrub-efi-amd64
пакет. Вы можете установить пакеты сЭто, вероятно, будет работать, только если вы загрузились в режиме EFI.
Если это не работает, вы можете попробовать эти пошаговые инструкции (в разделе «Установка GRUB2 в (U) EFI-системах») после
grub-efi
установки.Конфигурирование (+ Двойная загрузка)
Если инструкции РАОК работают, вы сможете добавить следующую строку в
/etc/grub.d/40_custom
Предполагается, что Windows распознается как
hd0
GRUB. Может потребоваться изменитьhd1
, чтобы работать.Теперь беги
обновить файл конфигурации.
Ссылки и дальнейшее чтение
Я использовал несколько источников.
источник
grub-pc
и установкиgrub-efi
в режиме live cd (возможно, перед установкой?)?Этот ответ неполон; Я не проверял ничего из этого. Вряд ли есть какие-либо ваши данные, но вы были предупреждены!
Я предполагаю, что здесь происходит то, что ваш BIOS загружается преимущественно из устаревшей MBR, так что старая версия UEFI Windows 7 игнорируется.
Одна из приятных сторон UEFI заключается в том, что вам больше не нужно беспокоиться о перезаписи GRUB в Windows; они оба должны прекрасно сосуществовать в разделе EFI. Поэтому одним из вариантов будет переключиться на
grub-efi
. Примечание: я не уверен,grub-efi
понимает ли разделы в стиле MSDOS; Я думаю, что это так. Если этого не произойдет, это не удастся загрузить, и вам потребуется LiveCD для восстановления. На самом деле, LiveCD всегда под рукой!Чтобы переключиться на
grub-efi
вы хотели бы/boot/efi
. Добавьте это к/etc/fstab
¹grub-efi
пакетUEFI and Legacy
доUEFI only
(или подобный вариант)Это должно оставить вас с UEFI-загрузочной установкой Ubuntu. Если этого не произойдет, загрузите ваш надежный LiveCD (или установочный компакт-диск Ubuntu Alternate - вам нужен вариант «Исправить неисправную систему»), загрузитесь в вашу систему и установите
grub-pc
снова.¹: Подробнее об этом шаге: вам нужно найти то, что ядро Linux называет системным разделом EFI. Это будет что - то вроде
/dev/sda2
,/dev/sdb3
или such². Затем вам нужно будет создать/boot/efi
каталог и добавить строку в/etc/fstab
. Если ваш раздел EFI/dev/sdb3
, то вы бы добавили следующую строку:После запуска
sudo mount /boot/efi
вы должны найти то , что/boot/efi
содержитEFI
каталог с подкаталогом для Windows 7.²: Поскольку у вас есть несколько жестких дисков, было бы неплохо выяснить UUID раздела, поскольку он будет стабильным при добавлении / удалении жестких дисков, тогда как
/dev/sda2
имя не гарантируется, что оно не изменится. Это может быть сделано после того, как вы закончили все остальное.Вы можете найти UUID, заглянув в
/dev/disk/by-uuid
. Например, я получаю:В моем случае, я знаю,
/dev/sda1
это мой системный раздел EFI, поэтому у меня естьпо моему
/etc/fstab
.источник
Disk utility
программы. Пока вы не найдете и не смонтируете свой раздел EFI,grub-efi
он не сможет работать - ему нужно вставить свой загрузчик в системный раздел EFI.sudo grub-install
иsudo update-grub
для того , чтобы фактически установить и настроить GRUB на раздел EFI. Вам нужно будет сделать это после загрузки в вашу установку (потому что она должна знать кое-что об установке на вашем жестком диске). Если вам нужна помощь, я могу добавить детали к ответу.create partition efi
. Для получения информации о diskpart, см. Technet.microsoft.com/en-us/library/cc766465%28WS.10%29.aspxЭто идеально, так что у вас, вероятно, будет хотя бы один свободный основной раздел в таблице разделов.
Вам не нужно конвертировать MBR в GPT для загрузки UEFI, просто создайте основной раздел FAT, установите
grub-efi-amd64-bin
пакет и следуйте инструкциям в разделе Добавление ESP в существующую установку с MBR, которая должна работать с текущими выпусками Ubuntu.источник
diskpart
,dism /apply-image
, тоbcdboot
(больше вариантов на оба эти, конечно) , чтобы установить его MBR или GpT независимо от того, как вы загрузились.В дополнение к ответу Portablejim (который действительно помог мне перейти с MBR на GPT, спасибо!), Вы можете использовать Boot-Repair для переустановки grub. Это восстановило мою загрузку после того, как я не смог завершить шаг 3, и еще раз, когда установка Windows 10 заставила вариант загрузки linux исчезнуть.
источник