Як видалити Windows із меню завантаження UEFI після власної установки Ubuntu?


12

Я встановив Ubuntu 18.04, використовуючи опцію "Щось інше ..." на ноутбуці з єдиним жорстким диском, який поставляється разом з Windows 10. Під час встановлення я видалив усі розділи, крім EFIрозділу. Потім я створив /розділ кореневої файлової системи та /homeрозділ. Все пройшло добре.

За винятком тепер у мене в меню завантаження UEFI є додаткова запис Windows, яку отримує Grub. Я можу вручну редагувати, /etc/default/grubщоб приховати неіснуючий варіант завантаження Windows, але я також хочу позбутися від запису в системі EFI. Як я можу позбутися цього останнього залишків Windows?

Відповіді:


21

Знайдіть записи завантаження UEFI

Щоб видалити тепер марну запис Windows для завантаження в UEFI, спочатку вам потрібно знайти її. Це можна зробити безпосередньо з основної ОС Ubuntu. Немає необхідності завантажуватись із живого USB / DVD. Встановлений Ubuntu вже має необхідну утиліту командного рядка.

Відкрийте термінал, натиснувши Ctrl+ Alt+, Tа потім введіть:

sudo efibootmgr

Введіть пароль, коли буде запропоновано і натисніть Etner. Курсор не рухатиметься, і ви не побачите жодної зірочки (*****). Це нормально в терміналі Ubuntu. Ви побачите такий вихід, як:

BootCurrent: 0002
Timeout: 2 seconds
BootOrder: 0002,0001,000
Boot0000* Dell
Boot0001* Windows Boot Manager
Boot0002* ubuntu

Зауважте, я отримав два записи, крім Windows, 0для "Dell" та 1 для "Windows Boot Manager". Оскільки я видалив усі оригінальні розділи, крім EFI, я більше не можу завантажувати "Dell" або "Windows Boot Manager". Я можу видалити і те, 0і 1. Але для цієї відповіді я покажу, як видалити лише запис Windows Boot Manager .

Примітка: записи, які потрібно видалити, можуть відрізнятися від цього прикладу. Використовуйте отриманий результат із власного комп’ютера, а не наведений вище приклад, щоб визначити, які записи потрібно видалити.

Видаліть застарілі записи завантаження

Тепер, коли ви знаєте, що хочете видалити запис 1(у цьому прикладі), у термінал введіть:

sudo efibootmgr -b 1 -B

Зауважте, що 1в команді вище. Ця команда видалить запис:

Boot0001* Windows Boot Manager

Видаліть відповідну папку з EFIрозділу

Ми майже готові. Цей останній крок гарантує, UEFIщо запит, який ми тільки що видалили, не відновить. Для цього ви видалите папку, що відповідає запису, який ви видалили в попередніх кроках.

Тепер ви знайдете ім’я та місцезнаходження папки, яку потрібно видалити. Використовуйте таку команду, щоб перерахувати всі папки в EFIпідпапці в розділі:

sudo ls /boot/efi/EFI

Ви побачите такий вихід, як:

Dell Windows ubuntu

Щоб видалити Windowsпапку, використовуйте таку команду:

sudo rm -r /boot/efi/EFI/Windows

Щоб переконатися, що папку видалено, скористайтеся sudo ls /boot/efi/EFIкомандою ще раз.

Нарешті оновіть grub, щоб приховати меню grub

На цьому етапі, коли ви завантажуєте ноутбук, grubвсе одно буде показано меню для вибору різних ОС, навіть якщо у вас встановлений лише Ubuntu. Відредагуйте файл /etc/default/grubза допомогою наступної команди. Ви можете використовувати будь-який інший редактор, якщо хочете.

sudo nano /etc/default/grub

Зробіть так, щоб два рядки виглядали так:

GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0

Якщо рядка GRUB_TIMEOUT_STYLE=hiddenне існує, додайте рядок, як зазначено вище.

Завершивши, збережіть та вийдіть із редактора за допомогою Ctrl+ X, а потім Yі Enter.

Останнім кроком є ​​оновлення grub за допомогою наступної команди:

sudo update-grub

Тепер ноутбук повинен безпосередньо завантажувати Ubuntu, не показуючи меню grub. Якщо вам потрібно перейти до режиму відновлення у майбутньому, тоді натисніть, Escпоки ноутбук завантажується, щоб відкрити меню грубу.

Довідка: Ця відповідь заснована на тому, як видалити "Ubuntu" у меню завантаження bios? (УЄФІ)

Сподіваюсь, це допомагає


2
ESP повинен бути вже встановлений /boot/efi, я не бачу причин монтувати ESP десь в іншому місці. sudo ls /boot/efi/EFIі sudo rm -r /boot/efi/EFI/Windowsповинен це робити.
mook765

@ mook765 Дякую Я відредагував відповідь.
user68186

efibootmgrможе бути баггі з деякими реалізаціями. У цих системах, можливо, доведеться використовувати bcfgз оболонки UEFI v2.
Боб

@Bob Дякую! Сміливо можете додати ще одну відповідь, використовуючи bcfg. Я не знайомий із оболонкою UEFI.
user68186

@ user68186 Я розглядав можливість додавати відповідь, але вікі Arch справді пояснює це краще, ніж я коли-небудь міг, і у мене більше немає доступу до машини, я можу легко спробувати це, щоб у кращому випадку це був короткий виклад вікі.
Боб

-1

Відкритий термінал. cd /boot/efi/EFI. Видалити папку Microsoft - sudo rm -R Microsoft. Ви також можете видалити завантажувальну папку - sudo rm -R Boot.

Щоб видалити запис з Windows , grub2, sudo gedit /boot/grub/grub.cfg. Шукайте запис у меню, диспетчер завантаження Windows (або подібний опис імені) та видаліть рядки до та, включаючи закриті фігурні дужки, та збережіть.

Робота виконана. Перезапустити.


2
Кілька проблем з цією відповіддю: По-перше, лише видалення папки може бути недостатньою. Дивіться коментар @Silversonic до відповіді . По-друге, не слід використовувати sudoбезпосередньо з такими графічними програмами, як geditце може зіпсувати вподобання користувачів. Краще використовувати sudo -iперший , щоб відкрити rootоболонку , якщо ви хочете використовувати geditз sudo. По-третє, безпосередньо редагування grub.cfgне рекомендується. Рекомендується редагувати /etc/default/grubі потім sudo update-grub.
user68186

Дивіться про askubuntu.com/questions/1009574/… про використання sudo geditта перегляньте інформацію про askubuntu.com/questions/437323/is-it-possible-to-edit-grub-cfg для отримання додаткових відомостей про редагування grub.cfg.
user68186

Цього достатньо. Проблем з цим немає. Це працює на 100%. Я робив це неодноразово, і це завжди працювало кожен раз. Не має значення, чи використовуєте ви sudo -i, то gedit, або sudo gedit. Останнє не приховує ваших налаштувань користувача. Звідки ти це береш? Ви можете легко редагувати grub.cfg, якщо знаєте, що ви робите, і ви можете створити резервну копію grub.cfg спочатку, якщо не впевнені. Ти ведеш педантичність. Якщо ви вже знаєте всі відповіді, то навіщо задавати питання в першу чергу ???
Пол Бенсон

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