Можно ли установить раздел EFI(ESP) после установки Ubuntu и Parrot?

Можно ли установить раздел EFI(ESP) после установки Ubuntu и Parrot?

Есть компьютер, на котором установлены Ubuntu и Parrot Security OS. Все в порядке, и он работает без проблем с Grub. Он может правильно загрузиться.

Когда мы устанавливали Ubuntu, мы отформатировали все HDD и забыли установить EFI. Когда мы попытались установить rEFInd, он показал, что EFI полностью отсутствует на компьютере.

Вопрос в следующем: как мы можем установить EFI после того, как мы установили все операционные системы. Мне нужно переустановить Ubuntu снова, чтобы получить его?

решение1

Конечно, это возможно, но вопрос в том, будет ли это менее хлопотно.

ЭСПэто просто небольшой раздел (512 Мб — хороший размер) с большой файловой системой и специальным типом.

  • Поскольку вам нужно его создать, вам необходимо иметь для него свободное место, а для этого вам, возможно, придется изменить размер одного из разделов.и файловая система на немс помощью такого инструмента, как gparted.

  • Если у вас уже есть необходимое пространство, то вам нужно создать новый раздел с соответствующим типом. В gpartedвы ищете "esp flag", который будет "EFI System" типом fdisk(или что-то похожее, если вы работаете на MBR). Это то, что делает раздел EFI разделом EFI.

  • Создайте файловую систему с помощьюmkfs.fat -F32 /dev/sdx

  • Получить UUID раздела с помощью blkid, установить его метку или что-то подобное

  • Создайте новую запись в /etc/fstab для нового раздела следующим образом (и убедитесь, что точка монтирования существует):

UUID=xxxx-xxxx   /boot/efi    vfat    defaults    0 2

В качестве альтернативы вы можете использовать /efi или, возможно, привязать монтирование к /boot, чтобы избежать пути /efi/EFI

  • Установите rEFInd или GRUB для EFI на этот раздел. Вам может понадобиться создать каталог /EFI на этом разделе

Этотдолжендать вам работающий ESP.
Вы можете прочитать больше и лучше на:https://wiki.archlinux.org/index.php/EFI_system_partition#Создать_раздел

решение2

Я однажды сделал что-то похожее. Я не записал точные шаги, но это было не так уж и сложно исправить. (Мне также понадобился rEFInd, но это должно работать и без него.) Это было примерно так:

  1. «Правильно» установите ту же версию Ubuntu на временный диск, отформатированный в формате GPT, или виртуальную машину, настроенную как система UEFI с виртуальным диском GPT, в качестве «донорской» фиктивной ОС.
  2. Если ваша основная ОС была обновлена ​​после установки, то также обновите фиктивную установку.
  3. Завершите работу фиктивной ОС.
  4. Используя загрузочный носитель для восстановления или другую загружаемую ОС, скопируйте раздел EFI с фиктивной машины на свою настоящую машину.
    1. Для этого можно использовать загрузочный DVD-диск Ubuntu, так как он поставляется с GParted.
    2. Если вы делаете это через VM, загрузите VM в ISO-образ для восстановления или установочный ISO-файл Ubuntu, смонтированный как виртуальный диск. Обратите внимание, что вы также можете смонтировать свой реальный диск ОС в VM как сырой VMDK (если вы используете VirtualBox, вам нужно будет использовать vboxmanageCLI для его создания, и не забывайте, что сопоставление недействительно при перезагрузках ОС хоста). Это позволит вам напрямую скопировать ваш «фиктивный» раздел EFI непосредственно на ваш реальный диск, что является реальной экономией времени, если вы делаете это в VM. (Вы даже можете загрузить свою реальную ОС в VM таким образом. Linux достаточно умен, чтобы не загружать драйверы для оборудования, которое временно не существует, даже проприетарные драйверы дисплея. Ядро уже имеет — и будет автоматически загружать — базовые драйверы с открытым исходным кодом для интеграции VirtualBox и VMware. На самом деле, я обычно устанавливаю Ubuntu на реальные диски таким образом, для последующей пересадки на другие машины, все через VM.)
  5. Перед копированием раздела EFI освободите место для него в качестве первого раздела, сначала уменьшив и/или переместив существующий раздел в сторону. (Это легко сделать с помощью GParted.) Новый раздел EFI не будет sda1 (как это было бы при правильной установке в первый раз), но, если я правильно помню, EFI, Grub, rEFInd и т. д. с этим справятся.
  6. Сопоставьте раздел с /boot/efi в установочном файле /etc/fstab.
  7. Теперь у вас есть два варианта получения загрузочной системы (опять же, вы можете сделать это на «голом железе» или через виртуальную машину с реальным диском, сопоставленным с помощью VMDK):
    1. Используйте инструмент для ремонта багажника, такой какРемонт багажникачтобы перевести все в состояние загрузки, обычно просто нажав одну кнопку.
      • Обратите внимание, что запускать Boot Repair необходимо из ОС в режиме UEFI, независимо от того, работает ли она на «голом железе» или в режиме виртуальной машины.
    2. rEFInd также должен уметь работать с этой конфигурацией. Но если нет, и вам действительно нужен rEFInd, вам может потребоваться сначала выполнить предыдущий шаг.
  8. Если вы хотите пропустить Grub и перейти на «чистый EFI», то и это можно обойти, но это выходит за рамки этого ответа (и моей памяти).

Мне любопытно, почему вы хотите использовать rEFInd? Это удивительный кусок кода, и он практически необходим для навигации по двойной или тройной загрузке с MacOS, но если это просто двойная загрузка с Linux/Windows, я часто обнаруживал, что Grub проще, хотя и уродливее. С ним меньше возни. Кроме того, rEFInd не «установил и забыл», он иногда перезаписывается и требует переустановки, что может быть небольшой проблемой, потому что типичные навыки системного администратора *nix/Windows не соответствуют rEFInd, и это происходит достаточно редко, так что вы обнаруживаете себя заново ищущим, как это сделать каждый раз. (Или запишите это и затем попытайтесь вспомнить, где эта заметка.) Кроме того, он иногда «полезно» создает значки для определенных версий ядра, которые, как правило, быстро становятся неактуальными. Я считаю, что есть задокументированный способ предотвратить такое поведение или, по крайней мере, удалить их постфактум, но я перестал им пользоваться, поэтому не помню. Но это всего лишь мой опыт.

Удачи!

Связанный контент