Розділ EFI vs / boot


41

Я щойно сів встановити debian 7, який містить щось нове для мене, що називається 'EFI'.

Я пройшов встановлення, як зазвичай роблю;

  • Розділ 256 Мб / завантажувальний, завантажувальний, незашифрований
  • Залишився розмір диска у вигляді / розділу, зашифрований

Інсталятор попередив мене про "жодного розділу EFI не знайдено", але я проігнорував це, оскільки мені подобається жити небезпечно.

Але ця установка не завантажується, grub скаржиться на "ELF magic" і переводить мене в режим порятунку.

Тому я знову запускаю інсталяцію і знайшов варіант для створення розділу EFI. Мої запитання такі:

  • Що це?
  • Чому я, здається, зараз його вимагаю?
  • Мені ще потрібен окремий / завантажувальний розділ?
  • У мене на одному диску встановлено Windows 7, який завжди добре працював із grub2 від mbr, чи можна врятувати цю установку?

Відповіді:


47

На вашому комп’ютері встановлено мікропрограмне забезпечення UEFI, яке замінило старий BIOS (хоча воно все ще підтримує операційні системи, що працюють лише в BIOS, під назвою "CSM")

  • У системах BIOS завантажувач (або "stage1" великого завантажувача) зберігається всередині MBR , у нульовому секторі диска. (512-байтний MBR резервує 446 байт для коду завантаження, решта використовується для інформації про розділи.) Якщо завантажувач занадто великий, його код "stage1" MBR зазвичай намагається знайти файли "stage2" у вашому / завантажувальному розділі.

  • У системах EFI або UEFI область коду завантажувального коду в MBR зазвичай порожня (більшість систем UEFI навіть не використовують MBR для розділення, віддаючи перевагу GPT ). Натомість усі завантажувачі зберігаються як звичайні .efiпрограми в "розділі системи EFI", який є звичайним розділом FAT32 зі спеціальним "типом розділу" в таблиці розділів. Якщо у вас є кілька операційних систем, вони поділяють один і той же системний розділ EFI.

    / boot / efi
    ├── EFI
    │ ├── арк
    │ │ ├── initramfs-linux.img
    │ │ └── vmlinuz-linux.efi
    │ └── гумібот
    │ └── gummiboot.efi
    ├── навантажувач
    │ ├── записи
    │ │ └── арх.конф
    │ └── loader.conf
    └── SHELLX64.EFI
    

    Деякі користувачі вирішують поставити розділ EFI /boot, полегшуючи конфігурацію для систем, що працюють лише для Linux. Але при подвійному завантаженні - навіть якщо це два різних дистрибутива Linux - я пропоную розділити EFI /boot/efi. Окремий /bootзазвичай непотрібний.)

Розділ EFI необхідний, якщо ви хочете завантажити систему в режимі UEFI. Однак, якщо ви хочете, щоб Debian, завантажуваний UEFI, може знадобитися перевстановити Windows, оскільки змішування двох методів завантаження в кращому випадку незручно.

І Windows 7, і Debian 7 підтримують BIOS і UEFI, і вони встановлюють відповідний завантажувач залежно від того, в якому режимі завантажувався інсталятор . Часто системи UEFI мають перемикач режиму завантаження на екрані налаштувань, маючи такі параметри, як "UEFI лише "," лише UEFI та CSM "," лише спадщина (BIOS) "," BIOS, потім UEFI "або щось подібне. (CSM - модуль підтримки сумісності, емуляція BIOS.)

Ваша система Windows 7, ймовірно, була встановлена ​​в режимі BIOS, але інсталятор Debian тепер перебуває в режимі UEFI і пропонує встановити завантажувач, сумісний з UEFI. (Можливо, ви десь переключили перемикач "UEFI / BIOS". Я не знаю.)

Наразі ви можете повністю проігнорувати EFI та знову встановити GRUB2 у MBR, можливо, використовуючи grub-install --target=i386-pc.


1
Чудова відповідь! Отже, якщо я використовую GPT та EFI, мені потрібно лише окремий розділ для завантаження EFI "," / "(root)," swap "," / home ", і це нормально?
Тимур Файзрахманов

2
@TimurFayzrakhmanov: Мінімальний необхідний рівень "/ boot (розділ системи EFI)" і "/ (root)".
grawity

1

Це не та сама ОС, але це була схожа проблема, у мене був Ubuntu 13.04, встановлений на ПК з Windows 8, і він дав мені варіант завантаження, він переходить безпосередньо до Windows 8. Тому мені потрібно було скористатися ремонтом завантаження, але він не розпізнав мою бездротова карта, тому я виконую кроки на цьому посиланні, щоб усунути проблему з бездротовою карткою: чи можна включити WiFi на компакт-диску Ubuntu Live?

В основному, я зробив, щоб увімкнути бездротову мережу:

  1. Перейдіть до Налаштування системи → Джерела програмного забезпечення → Додаткові драйвери
  2. Виберіть будь-який доступний варіант, окрім "Не використовувати пристрій"
  3. Натисніть "Застосувати зміни"

Потім я дотримувався кроків із https://help.ubuntu.com/community/Boot-Repair

В основному те, що я робив:

  1. запустити відновлення завантаження з будь-якого: 1.тирення (логотип Ubuntu у верхньому лівому куті екрана)

    1. або Система-> Адміністрація-> Меню відновлення завантаження (лише Ubuntu 10.04)

    2. або ввівши «відновлення завантаження» в терміналі

  2. Потім натисніть кнопку "Рекомендований ремонт". Коли ремонт закінчено, зверніть увагу на URL-адресу (paste.ubuntu.com/XXXXX), яка з’явилася на папері, після чого перезавантажте та перевірте, чи відновили ви доступ до своїх ОС.

  3. Якщо ремонт не вдався, вкажіть URL-адресу людям, які допомагають вам електронною поштою або на форумі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.