По-перше, критично, що ви розумієте свій режим завантаження. Сучасні комп'ютери можуть завантажуватись двома способами:
- BIOS - це старий спосіб завантаження, який застосовувався на більшості комп'ютерів, запроваджених до 2011 року. Сучасні комп'ютери підтримують завантаження в режимі BIOS за допомогою функції, що називається модулем підтримки сумісності (CSM), який називається "підтримка завантаженого старого режиму" або подібний термін. Таким чином, до цього методу можна віднести три імена: BIOS, CSM або legacy. Він включає 16-розрядний код завантажувача, записаний у Master Boot Record (MBR Record) та різних інших місцях. Це неелегантний, але зрілий метод завантаження, і більшість сайтів, які прямо не згадують режим завантаження, описують завантаження в режимі BIOS. Якщо ваш комп'ютер постачався з Windows 8 або новішою версією, швидше за все, він не використовує цей метод завантаження.
- EFI / UEFI - це вбудований режим завантаження для більшості комп'ютерів, представлений з середини 2011 року, і він повністю відрізняється від завантаження в режимі BIOS, тому вам слід ігнорувати будь-які поради, які чітко заявляють, що це стосується завантаження в режимі BIOS, або все, що не згадує режим завантаження (оскільки це, ймовірно, старий або написаний тим, хто не знає різниці). Один виняток: заплутано багато людей і навіть виробники комп'ютерів називають свої ІФІ як "BIOS". Така практика створює велику плутанину.
Оскільки ви згадуєте Windows 10, швидше за все, ваш комп'ютер базується на EFI і завантажується в режимі EFI. Я продовжуватимусь з цього припущення. Якщо це неправильно, ігноруйте решту цієї відповіді.
Для завантаження внутрішнього диска в режимі EFI ОС зазвичай зберігає завантажувач у вигляді файлу на системному розділі EFI (ESP) на диску. Це ім'я файлу може бути будь-яким законним, але для Ubuntu воно буде EFI/ubuntu/shimx64.efi, яке, в свою чергу, запускається EFI/ubuntu/grubx64.efi. Інсталятор ОС реєструє ім'я завантажувача у вбудованому менеджері завантаження EFI, який зберігає це ім'я в NVRAM. Якщо EFI працює правильно (не всі), це призводить до робочого процесу завантаження.
Проблема з цим процесом, застосована до знімного диска, триразова:
- Установник Ubuntu встановить GRUB на "ESP", але у вас може бути доступно кілька ESP (майже напевно один на жорсткому диску, а може бути і один на USB-накопичувачі). Управління місцем встановлення GRUB може бути складним. Це не робиться за допомогою параметра, позначеного очевидним заголовком про те, де встановити GRUB. Натомість це можна зробити (AFAIK) лише за допомогою параметра інсталяції "Something Else", позначивши ESP, який ви хочете використовувати як "завантажувальний розділ EFI" або "System Partition System" (назва якого залежить від версії Ubuntu).
- Якщо ви встановите GRUB на ESP на USB-накопичувачі, тоді, коли ви виймете USB-накопичувач, EFI може помітити, що у нього є зареєстрований запис завантажувача, який недійсний, і видалити цю запис. Багато EFI роблять це, і це означає, що якщо встановити GRUB на зовнішній диск, а потім відключити його, ви втратите можливість завантажуватися з цього диска, навіть коли ви знову підключите диск.
- Спосіб Ubuntu налаштовує GRUB змушує його покладатися на конфігураційні файли , які знаходяться в Ubuntu
/boot/grubкаталог, який НЕ ймовірно, буде на ESP. Таким чином, якщо Ubuntu встановить GRUB на ESP на вашому внутрішньому диску, ви уникнете першої проблеми, але наткнетесь на іншу, оскільки при запуску з відключеним USB-накопичувачем GRUB запуститься і не зможе знайти файли його конфігурації. Результат - grub>підказка, яка містифікує більшість користувачів.
Існує ряд рішень цих проблем, серед яких:
- Керівництво по установці жратви в резервному файл на зовнішньому диску - OS інсталяторів завантаження за допомогою резервного файлу з
EFI/BOOT/bootx64.efi. При копіюванні Shim (який Grub запуски) до цього імені файлу (шляхом копіювання EFI/ubuntuна EFI/BOOTна ESP , а потім перейменувати shimx64.efiв bootx64.efiвEFI/BOOT), ваша прошивка зможе запустити ваш USB-GRUB так само, як це робив інсталятор Ubuntu. Це допоможе вирішити обидві проблеми, які я щойно визначив, але вам потрібно буде використовувати вбудований менеджер завантаження комп'ютера, щоб вибрати, яку ОС завантажувати. Цей вбудований диспетчер завантаження коливається від непридатного до допустимого, тому це може бути або не бути прийнятним рішенням. Вам також може знадобитися налаштувати замовлення на завантаження після встановлення Ubuntu, щоб він не запускав GRUB або з ESP внутрішнього диска, або з зовнішнього диска зовнішнього диска за замовчуванням.
- Покладіть
/bootрозділ на внутрішній диск - Якщо ви встановите GRUB на внутрішній диск, ви також можете поставити /bootрозділ на внутрішній диск. Це дасть можливість GRUB нормально працювати на всіх черевиках; однак параметр Ubuntu з'явиться постійно, навіть коли USB-диск від'єднано від вилки. Це може бути небажаним, особливо якщо за замовчуванням є Ubuntu. Також це рішення означає, що ваш зовнішній накопичувач USB буде завантажуватися лише на комп'ютері, на якому ви його підготували. Якщо ви хочете використовувати цей диск на інших комп’ютерах, вам слід уникати цього рішення.
- Використовуйте розумніші менеджер завантаження - завантажувати менеджер дає вам вибір операційки для завантаження, тоді як завантажувальний навантажувач завантажує ядро в пам'ять. GRUB виконує обидва завдання, а вбудований менеджер завантаження EFI виконує лише першу роботу. Існують і інші менеджери завантаження, деякі з яких можуть допомогти вам уникнути виявлених я проблем. Наприклад, мій власний rEFInd, якщо він встановлений на ESP внутрішнього диска і зробив програму завантаження за замовчуванням, виявить і представить параметр Ubuntu, якщо і лише за наявності GRUB або Linux ядра - тобто коли USB-накопичувач підключений в. Встановивши
default_selectionопцію вrefind.confвідповідним чином ви можете налаштувати rEFInd для автоматичного завантаження Ubuntu, якщо ваш USB-накопичувач Ubuntu підключений та завантажиться прямо в Windows, якщо USB-накопичувач Ubuntu не підключений. Моя відповідь на це питання містить більш детальну інформацію про цей тип конфігурації, хоча і на Mac, а не ПК.
При будь-якій удачі, один із цих підходів змусить вас піднятися та працювати.