Что делает /boot/efi в моей Ubuntu?

Что делает /boot/efi в моей Ubuntu?

Когда я $cd /bootвхожу в каталог /boot и затем $ls -l, он показывает:

.........
drwx------ 2 root root      4096 Jan  1  1970 efi
.........

Здесь я просто скрываю все остальные файлы, отображаемые в каталоге.

Но когда я $ls -l efiявляюсь пользователем root, отображается:

всего 0

Когда я запускаю $df -h /boot/efi, он показывает:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       511M  4.0K  511M   1% /boot/efi

Когда я запускаю $df -h | grep sda1, он показывает:

/dev/sda1       511M  4.0K  511M   1% /boot/efi

Когда я запускаю $fdisk -l /dev/sda, он показывает:

Disk /dev/sda: 119.25 GiB, 128035676160 bytes, 250069680 sectors
Disk model: GIM128
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x122b13d1

Device     Boot   Start       End   Sectors   Size Id Type
/dev/sda1  *       2048   1050623   1048576   512M  b W95 FAT32
/dev/sda2       1052670 250068991 249016322 118.8G  5 Extended
/dev/sda5       1052672 250068991 249016320 118.8G 83 Linux

Интересно, почему sda1 использует тип 'W95 FAT32' и для чего используется efi. Я купил машину Linux (промышленный компьютер) у поставщика, который сказал мне, что они просто установили систему с настройками по умолчанию. ОС — Ubuntu 20.04.4 LTS.

решение1

Любая система на базе UEFI (UEFI — это новая прошивка, которая заменила BIOS 1980-х годов) требует для любой установки в режиме UEFI небольшой раздел в формате FAT32, где установлен загрузчик, или более одного, если используется двойная или мультизагрузка. Дополнительные пояснения в конце.

Итак, то, что вы видите, является нормальным и ожидаемым для любого компьютера последнего десятилетия, независимо от предустановленной ОС.

BIOS и UEFI — это прошивки.

Первый использовался для ПК и совместимых/клонов с первого ПК в 1981 году до примерно 2008/9. Затем BIOS был заменен более новой и гораздо более функциональной прошивкой под названием UEFI. Затем с 2012 года и Windows 8 Microsoft практически «заставила» всех производителей предустанавливать Windows в режиме UEFI и GPT.

Вам не нужно и не следует "просматривать" /boot/efi (который, кстати, является просто точкой монтирования для системного раздела EFI), если вы не знаете, что делаете. Вместо этого вам на самом деле нужно понять, что такое UEFI, как он загружается и какие у него требования, особенно при двойной загрузке.

решение2

Позвольте мне подвести итог и завершить вопрос. После прочтения ответов и комментариев я гуглю соответствующие термины и считаю, что вопрос можно завершить следующим образом. Вhttps://en.wikipedia.org/wiki/EFI_system_partition, там говорится:

UEFI обеспечивает обратную совместимость с устаревшими системами, резервируя первый блок (сектор) раздела для кода совместимости, фактически создавая устаревший загрузочный сектор. В устаревших системах на базе BIOS первый сектор раздела загружается в память, и выполнение передается этому коду. Прошивка UEFI не выполняет код в MBR, за исключением загрузки в устаревшем режиме BIOS через модуль поддержки совместимости (CSM).

Спецификация UEFI требует полной поддержки таблиц разделов MBR.1Однако некоторые реализации UEFI немедленно переключаются на загрузку CSM на основе BIOS при обнаружении определенных типов таблиц разделов на загрузочном диске, что фактически предотвращает выполнение загрузки UEFI с системных разделов EFI, содержащихся на дисках с разделами MBR.[5]

Затем, чтобы проверить, использует ли моя машина Linux GPT или MPR, я запускаю $ sudo parted -l, и он показывает:

Model: ATA GIM128 (scsi)
Disk /dev/sda: 128GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End    Size   Type      File system  Flags
 1      1049kB  538MB  537MB  primary   fat32        boot
 2      539MB   128GB  127GB  extended
 5      539MB   128GB  127GB  logical   ext4

Поле «Таблица разделов» показывает, что я использую таблицу разделов MBR msdos (которая до сих пор широко используется для Linux и Windows).

Итак, в заключение, в моем случае, хотя загрузочный раздел (основной раздел) смонтирован в /boot/efi, он фактически использует загрузчик на базе BIOS.

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