Как установить раздел загрузки по умолчанию, если у меня есть два раздела EFI?

Вопрос или проблема

Я использую двойную загрузку Windows и Pop_OS!, и недавно Windows обновился, из-за чего все испортилось 🙁

У меня две EFI-раздела на одном диске: один маленький (старый), который я ранее использовал для Ubuntu/Windows, и новый больший, который содержит systemd. Мне нужно, чтобы загрузка по умолчанию происходила из systemd. Я могу получить доступ к systemd, вручную выбрав его через UEFI, но даже после установки флага загрузки на больший раздел моя машина по-прежнему загружается из старого (неправильного) раздела.

Я не знаю, как это исправить, поскольку интернет, похоже, утверждает, что установка флага загрузки должна была решить эту проблему. Я полагаю, что удаление старого раздела – это вариант, но это звучит страшно, и я не хочу еще больше все испортить. Следует отметить, что текущее место загрузки в моем BIOS предлагает не так много, похоже, это просто текущий неправильный раздел. Кроме того, я хотел бы исправить это так, чтобы Windows снова не вызвал эту проблему.

Есть идеи?


Редактировать: вывод sudo blkid

введите описание изображения здесь

Раздел с systemd – это /dev/nvme0n1p6

Также вывод gparted может быть полезен:

введите описание изображения здесь


Редактировать 2:

Вывод tree -L 3 /boot/efi/:
введите описание изображения здесь

Подключенный /dev/nvme0n1p1:
введите описание изображения здесь

Я не знаю, поможет ли это, но я обнаружил, что Windows может загрузиться только с первого раздела, а Pop_OS! только с шестого, хотя экран выбора операционной системы systemd имеет вариант как для Pop_OS!, так и для Windows.

Насколько я понял, это описывает текущее состояние:

  • /dev/nvmen0n1p1 смонтирован на /tmp/mnt – загружает Windows, не Pop_OS
  • /dev/nvmen0n1p6 смонтирован на /boot/efi – загружает Pop_OS, не Windows

Я придумал план действий:

  1. du -sh /boot/efi узнать размер “Linux ESP”
  2. du -sh /tmp/mnt узнать размер “Windows ESP”
  3. проверить, достаточно ли Windows ESP для Linux ESP
  4. umount /boot/efi размонтировать “Linux ESP”
  5. dd if=/dev/nvmen0n1p6 of=p6.backup.vfat создать резервную копию на всякий случай
  6. mount /boot/efi снова смонтировать “Linux ESP”
  7. rm -r /tmp/mnt/EFI/ubuntu похоже, у вас когда-то была установка Ubuntu. Этот устаревший загрузчик можно удалить.
  8. cp -r /tmp/mnt/* /boot/efi объединить “Windows ESP” с “Linux ESP” (это “исцелит” загрузку Windows – но в неправильном ESP)
  9. cp -r /boot/efi* /tmp/mnt/ скопировать объединенный ESP в “Windows ESP”
  10. umount /boot/efi снова размонтировать “Linux ESP”
  11. dd if=/dev/zero of=/dev/nvmen0n1p6 удалить “Linux ESP” (это можно вернуть, используя резервную копию в /dev/nvmen0n1p6). Теперь UEFI не имеет другого выбора, кроме как выбрать единственный оставшийся ESP
  12. отредактировать /etc/fstab, чтобы /dev/nvmen0n1p1 монтировался на /boot/efi
  13. Опционально: mount /boot/efi смонтировать “объединенный ESP”
  14. ???
  15. перезагрузить и держать пальцы скрещенными

Опционально: вы должны быть в состоянии выполнить grub-install /dev/nvmen0n1 и update-grub после монтирования объединенного ESP.

Я не знаком со стилем загрузки Pop_OS!. Я никогда не слышал о systemd-bootx64.efi. Я рекомендую подготовить USB-накопитель с Super GRUB2 Disk – он обычно может загрузить что угодно.

Ответ или решение

Чтобы установить по умолчанию нужный загрузочный раздел в ситуации с двумя EFI-разделами, следуйте приведённым ниже шагам. Обратите внимание, что вы берёте на себя ответственность за изменения, которые вносите в свою систему. Всегда рекомендуется делать резервные копии важных данных перед проведением каких-либо операций с дисками.

1. Понимание текущей конфигурации

На основании представленных данных, у вас есть два EFI-раздела:

  • /dev/nvme0n1p1 — это старый раздел, используемый для загрузки Windows.
  • /dev/nvme0n1p6 — это новый раздел, содержащий загрузчик для Pop_OS!.

Убедитесь, что именно этот новый раздел вы хотите использовать по умолчанию.

2. Проверка содержимого разделов

Запустите следующую команду, чтобы просмотреть содержимое обоих разделов и убедиться, что все важные файлы находятся на месте:

ls /boot/efi

и

ls /tmp/mnt

Убедитесь, что на разделах есть файлы systemd-bootx64.efi и другие, необходимые для загрузки системы.

3. Настройка загрузчика

Сначала смонтируйте нужные разделы, если они ещё не смонтированы:

sudo mount /dev/nvme0n1p1 /mnt/windows
sudo mount /dev/nvme0n1p6 /mnt/popos

Далее создайте резервные копии текущих EFI-разделов:

sudo cp -r /mnt/popos/EFI /mnt/popos/EFI.bak
sudo cp -r /mnt/windows/EFI /mnt/windows/EFI.bak

4. Слияние и настройка загрузчиков

Рассмотрите возможность переноса загрузчика из одного EFI-раздела в другой. Это может потребоваться, если Windows перезаписывает загрузчик. Выполните следующее:

sudo cp -r /mnt/popos/EFI/* /mnt/windows/EFI/

После этого убедитесь, что все файлы корректно скопированы, и перейдите к обновлению конфигурации загрузчика Windows. Можно использовать bcdedit для настройки приоритетов загрузки, если у вас есть доступ к Windows.

5. Установка нового приоритета загрузки

Чтобы задать новый порядок загрузки, вам нужно использовать efibootmgr. Установите его, если он не установлен:

sudo apt install efibootmgr

Запустите:

sudo efibootmgr

Проверьте текущий порядок загрузки. Вы можете изменить порядок загрузки, используя следующую команду (замените 0001 на правильный идентификатор для Pop_OS!):

sudo efibootmgr -o 0001,0000

6. Удаление ненужных EFI-разделов (по желанию)

Если всё работает корректно, и вы уверены, что старый EFI-раздел больше не нужен, его можно удалить с помощью gparted или командной строки. Будьте осторожны! Это может вызвать проблемы с загрузкой системы.

sudo parted /dev/nvme0n1 rm 1

7. Тестирование конфигурации

Перезагрузите систему и проверьте, загружается ли Pop_OS! по умолчанию. Если система не загружается должным образом, вы можете использовать Super GRUB2 Disk или Live USB для доступа к системе и восстановления конфигурации загрузчика.

Заключение

Перед выполнением вышеуказанных шагов убедитесь, что вы полностью понимаете все действия. Настройка загрузочных разделов может быть рискованной, и неверные действия могут привести к потере данных или невозможности загрузки системы. Всегда поддерживайте резервные копии ваших данных и настроек перед любыми изменениями.

Оцените материал
Добавить комментарий

Капча загружается...