Чому встановлено розділ efi?


10

В Ubuntu та декількох інших дистрибутивах встановлений розділ EFI /boot/efi.

Як я розумію, розділ EFI читається перед коренями OS ( /). Отже, після завантаження та монтажу ядра /, для чого нам ще потрібен розділ EFI? Теоретично після первинної установки вам більше не потрібен доступ /boot/efi, оскільки він просто містить бінарний файл .efi ...

То чому він монтується? Здається, автоматизація розділу з чутливими файлами, до яких ви не дуже часто отримуєте доступ, не дуже розумна справа з дизайнерської точки зору ...


Редагувати:

Деякі новітні системи можуть включати в grub.cfgсебе ефірний розділ. Дивіться цей звіт про помилку , хоча це не стосується мого 16.04LTS. Тож для систем з конфігураційним файлом на ESP має більше сенсу монтувати його. Однак, як часто людям потрібно запускати update-grub, і чи не міг сценарій змонтувати його, а потім оновити його знову після оновлення?

Відповіді:


9

Є декілька причин, через які в ESP може виникнути потреба в різних обставинах:

  • /boot/efi/EFI/ubuntu/grubx64.efi - Це двійковий файл EFI GRUB 2, який необхідно замінити, якщо оновлений пакет GRUB.
  • /boot/efi/EFI/ubuntu/grub.cfg- Це файл конфігурації GRUB, який робить дуже мало; в основному це навантаження /boot/grub/grub.cfg. Це перенаправлення робиться, щоб увімкнути "гачок" для систем безпечної завантаження; без захищеного завантаження, grubx64.efiдвійковий файл може бути побудований локально і вказує безпосередньо на /boot/grub/grub.cfg; але оскільки розташування /boot/grub/grub.cfgвідрізняється (як це бачимо в ESP) від однієї системи до іншої, розміщення grub.cfgфайлу в ESP необхідно для безпечного завантаження, яке не дозволяє grubx64.efiбудувати локально. IMHO, було б більше сенсу розміщувати основні grub.cfgта інші файли підтримки GRUB на ESP, але розробники, відповідальні за це, обрали більш консервативний підхід щодо того, що робить система на базі BIOS. У будь-якому випадкуgrub.cfgна ESP буде рідко, якщо взагалі, оновлюватися; але це може знадобитися в якийсь момент, особливо якщо оновлений пакет GRUB Debian.
  • /boot/efi/EFI/ubuntu/shimx64.efi- Це двійковий файл Shim, який необхідний для безпечного завантаження. Як і двійковий GRUB 2, він може бути оновлений оновленням пакету Debian, але не shim-signedпакетом.
  • /boot/efi/EFI/ubuntu/MokManager.efi- Це бінарний файл MokManager, який є інструментом підтримки Shim. Як і Shim, він може бути оновлений пакетом оновлення.
  • /boot/efi/EFI/ubuntu/fwupx64.efi- Це інструмент для автоматизації оновлення мікропрограмного забезпечення на комп'ютері на базі EFI. Як і у попередніх бінарних файлах EFI, він може бути оновлений оновленням пакету Debian.
  • Файли прошивки EFI - Оновлення програмного забезпечення, ймовірно, потребує копіювання файлів мікропрограмного забезпечення в ESP. Це може бути ручний процес або щось, що хоча б частково автоматизоване за допомогою fwupdateбінарного Linux та відповідного fwupx64.efiбінарного EFI. (Я не на 100% впевнений, що для останнього потрібно писати файли в ESP. Хоча це досить нове і має мінімальну документацію.)
  • Інші інструменти, пов'язані з EFI - такі програми, як мій менеджер завантаження rEFInd та інші нестандартні менеджери завантажувачів та інструменти EFI, можливо, повинні бути встановлені в ESP. Велика кількість інструментів, які, можливо, потрібно буде встановити, є значним, але більшість з них є екзотичними, тому кількість систем, на які впливає, невелика.
  • Налаштування файлів конфігурації вручну - Якщо ви хочете перенастроїти завантажувач, можливо, вам доведеться прочитати його файл конфігурації на ESP, відредагувати його та зберегти відредагований файл назад. З цього приводу для простого вивчення конфігурації потрібно встановити ESP (хоча це може бути кріплення лише для читання).
  • Інструменти системної інформації - такі інструменти, як Boot Info Script, читають конфігураційні файли в ESP, щоб створити звіт про налаштування системи. Інформаційний скрипт завантаження, ймовірно, підтримує ESP, навіть якщо він не зможе виконувати свою роботу, але я не на 100% позитивний. Можливо, існують інші інструменти, які передбачають, що ESP вже встановлений, і їх функціональність буде погіршена, якби це припущення не було виконано.

Підсумовуючи, є досить багато причин того, що сама ОС або ви можете хотіти або потрібно прочитати або написати в ESP. Зважаючи на це, цих причин недостатньо мало, що може бути корисним механізм тимчасового встановлення ESP і потім його відключення після завершення. Безумовно, сценарій встановлення пакунків Debian міг би зробити цю роботу, наприклад, як автоматизовані інструменти, що змінюють конфігураційні файли в ESP. AFAIK, однак, зміна статусу кріплення ESP не на горизонті.

Зауважте, що ESP за замовчуванням встановлений з досить обмежуючими правами. Нещодавно (починаючи з 15.10 або 16.04, можливо - я точно не знаю, коли), дозволи на монтування були змінені, щоб rootможна було читати лише з них /boot/efi. Ще до цього часу rootможна було писати лише в ESP, хоча дозволи на читання були слабкішими. Оскільки rootможна монтувати розділи, є мінімальна користь для безпеки, якщо залишити ESP не зміненим на цьому етапі, хоча було б користь у тому, що буде менший ризик пошкодження файлової системи в ESP через помилку, відключення живлення тощо.


Чи просто збіг обставин, що кілька дистрибутивів мають таку політику кріплення? Або це може бути пов'язано з POSIX чи якимсь іншим стандартом? Всі похідні Debian +, Arch + похідні, OpenSUSE. Можливо, Fedora ...
jiggunjer

На встановленні 17.04 у мене немає обмежень навколо /boot/efi(вище відповідь згадує лише доступ до корінців; для мене це не стосується; до того ж кріплення є rw): fstabentry:UUID=1234-5678 /boot/efi vfat defaults 0 1
sxc731

2

Ви маєте рацію: немає необхідності монтувати ESP /boot/efiу налаштуваннях за замовчуванням (так само з grub 2 )

update-grub оновлення, grub.cfgяке полягає в /boot/grubтому, що конфігурація grub оновлюється без проблем, якщо ESP не встановлений.

У мене це не було встановлено пару років на попередній установці без проблем.

Ви можете отримати трохи мікросекунди під час завантаження, не встановлюючи його, якщо бажаєте ;-)


Мені це здається дурним дизайном. Видалити його випадково = втратити всі завантажувачі. Інсталятор openSuse активно попереджає мене, якщо я не додаю його до fstab, але відключення його досі не спричинило ядерного краху.
jiggunjer

1
Ви не можете видалити системні файли випадково. Існує безліч інших файлів, які можуть зруйнувати вашу систему. І це можна легко відновити в будь-якому випадку.
Пілот6

1
@ Pilot6 1) можна. 2) не має значення. 3) залежить від того, як була налаштована система.
jiggunjer
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.