Ubuntu 20.04 LTS - не удается создать загрузочную флешку
=========================================================

 Я пытаюсь создать загрузочный USB-накопитель для 20.04. Если я сделаю загруженный образ 20.04, я смогу правильно загрузить диск. Однако, если я извлекаю все содержимое 20.04 в каталог, а затем воссоздаю ISO и dd его на диск, полученный диск не загружается. Мой zbook просто издает звуковой сигнал и возвращается в меню загрузки. Команду для создания ISO я взял из нескольких статей. Но я уверен, что это должен быть сам созданный ISO. Есть идеи? 

 

 **tl; dr**  Когда вы воссоздаете ISO из извлеченных файлов, вы (правильно) не переносите ни загрузочный блок BIOS, ни системный раздел EFI, ни  *ESP*  во вновь созданный USB-накопитель. Следовательно, система не сможет загрузиться с этого диска. 

 Проблема
=========

 Загрузка загрузчика
--------------------

 Системная микропрограмма не знает, как загрузить операционную систему с диска, и вместо этого передает эту ответственность небольшой программе, называемой загрузчиком . Он хранится на диске в указанном месте, где его может легко найти прошивка. Место, где хранится загрузчик, зависит от метода, используемого микропрограммой для загрузки с диска. Сегодня на платформах x86-64 используются два разных метода загрузки: современный EFI и устаревшая загрузка BIOS. 

 Я полагаю, что ваш HP Z-Book достаточно новый, чтобы быть как x86-64, так и поддерживать загрузку EFI. Вы сможете включить поддержку устаревших версий BIOS в служебной программе настройки микропрограммы системы, хотя это может отличаться на других ноутбуках и может быть изменено для новых ноутбуков. 

###  Системный раздел EFI (ESP)

 x86-64 Прошивка на основе EFI загружает загрузчик, ища файл с именем  `/efi/boot/bootx64.efi`  (регистр не имеет значения) на специальный раздел в формате FAT32 с типом  `0xEF`  или  `Системный раздел EFI (ESP)`  на выбранном загрузочном диске. Некоторые BIOS могут (по-видимому) также загружаться из файловых систем NTFS. 

 Большинство дистрибутивов Linux, включая Ubuntu, теперь распространяют образ диска, совместимый с El Torrito.Это означает, что один и тот же диск может быть загружен устаревшей версией BIOS или современной прошивкой на основе EFI в соответствующих режимах загрузки. Когда вы извлекаете или монтируете диск (то есть из файлового менеджера GNOME Files), раздел EFI сохраняется как отдельный файл  `efi.img` , но на самом деле это  *не* , как Диск размещен на CD / DVD, записанном из этого файла ISO. 

 Таким образом, микропрограмма системы не распознает этот файл как действительный системный раздел EFI при его копировании на USB-накопитель. Привод отклоняется прошивкой, так как не считает диск загрузочным. 

 Устранение проблемы
====================

 Вы можете создать системный раздел EFI, используя диски GNOME, GParted или инструменты командной строки, такие как  `gdisk` . Новый раздел должен иметь тип ESP и быть отформатирован как FAT32. 

 Содержимое  `efi.img`  должно быть извлечено в папку с именем  `efi`  на целевом диске, чтобы  `bootx64.efi`  отображался по пути  `/efi/boot/bootx64.efi`  в корне диска. 

 Остальная часть ISO может быть извлечена в тот же раздел, и это то, что делают такие инструменты, как Rufus. Однако для большинства дистрибутивов Linux часто требуется дополнительный шаг: метка файловой системы часто используется для идентификации диска, с которого следует загружаться, и, следовательно, метка файловой системы должна совпадать с меткой файла ISO. В противном случае (например, с Ubuntu) ядро не сможет найти корневую файловую систему SquashFS для продолжения загрузки.

 

 Есть много способов сделать Загрузочный USB-накопитель
-------------------------------------------------------

 **Следующий метод извлекает содержимое ISO в раздел** 

 Создать загрузчик Grub2, использующий постоянные разделы, очень просто. * 

* Загрузочная установка Ubuntu или Live USB.
* Вставьте целевой USB.
* Запустите GParted.
* Создайте таблицу разделов GPT на целевом USB.
* Создайте слева загрузочный раздел BIOS размером 1 МБ, отформатированный как неформатированный.
* Добавьте рядом с ним загрузочный раздел FAT32 EFI размером 300 МБ.
* Добавьте корневой раздел ext4, достаточно большой для содержимого ISO Ubuntu (~ 3 ГБ на 20.04).
* Создайте раздел ext4 с меткой casper-rw
* Добавьте раздел данных NTFS, если хотите.
* Применить все операции.
* Отметить раздел 1 bios\_grub.
* Пометить загрузку раздела 2, особенно
* Закрыть GParted.

[![gparted](https://i.stack.imgur.com/FLnYL.png)](https://i.stack.imgur.com/FLnYL.png)

* Откройте папку ISO от имени администратора, откройте ISO с помощью Archive Manager.
* Извлеките содержимое ISO в корневой раздел Target.
* Перетащите загрузочную папку и папку EFI из окна Archive Manager в загрузочный раздел EFI.
* Отредактируйте sdx2 / boot / grub / grub.cfg добавление set root = (hd0,3) после первой строки, которая начинается с  `menuentry` .
* Добавьте пробел и слово «постоянный» после ---. 

```
  set timeout = 5 
menuentry "Ubuntu persistent" {
set root = (hd0,3) 
set gfxpayload = keep 
linux / casper / vmlinuz file = / cdrom / preseed / ubuntu.seed boot = casper quiet splash --- постоянный 
initrd / casper / initrd 
} 
 
```
* Установить grub, если в режиме BIOS или загрузился с USB-накопителя, запустите: 

```
  sudo mount / dev / sdx2 / mnt 
 
sudo grub-install --boot-directory = / mnt / boot / dev / sdx {{1} } 
```
* Если установленная система находится в режиме UEFI, загрузитесь с целевого диска и выполните указанное выше.

 * Загрузка на основе mkusb от sudodus 

 **Другой метод создания загрузочного USB - это загрузка файлов ISO напрямую** 

 [Образ шаблона BIOS / UEFI для загрузки файлов ISO](https://askubuntu.com/questions/1269462/bios-uefi-template-image-for-booting-iso-files)