當我$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 是取代1980 年BIOS 的新韌體),對於任何UEFI 模式安裝,都需要一個小的FAT32 格式分區,用於安裝引導程序,如果是雙引導或多引導,則需要多個分區。補充說明在最後。
因此,無論預先安裝的作業系統如何,您所看到的情況在過去十年的任何電腦中都是正常的和預期的。
BIOS 和 UEFI 是韌體。
前者從 1981 年第一台 PC 到 2008 年 9 月左右一直用於 PC 和相容機/克隆機。然後 BIOS 被更新且功能更豐富的韌體(稱為 UEFI)所取代。然後自 2012 年和 Windows 8 以來,微軟幾乎「強迫」所有製造商以 UEFI 模式和 GPT 預先安裝 Windows。
你不需要也不應該「瀏覽」/boot/efi(順便說一句,它只是 EFI 系統分割區的掛載點),除非你知道自己在做什麼。相反,您實際上需要做的是了解 UEFI 是什麼、它如何啟動及其要求,尤其是在雙重啟動時。
答案2
讓我來總結一下並總結一下這個問題。閱讀完答案和評論後,我谷歌了相關術語,相信問題可以總結如下。在https://en.wikipedia.org/wiki/EFI_system_partition, 它說:
UEFI 透過為相容性程式碼保留分割區的第一個區塊(磁區)來提供與舊系統的向後相容性,從而有效地建立舊開機磁區。在基於 BIOS 的傳統系統上,分區的第一個磁區被載入到記憶體中,並且執行轉移到該程式碼。 UEFI 韌體不會執行 MBR 中的程式碼,除非透過相容性支援模組 (CSM) 在傳統 BIOS 模式下啟動。
UEFI規範要求完全支援MBR分區表。1然而,一些 UEFI 實作在偵測到啟動磁碟上某些類型的分割表後立即切換到基於 BIOS 的 CSM 啟動,從而有效地阻止從 MBR 分割磁碟上包含的 EFI 系統分割區執行 UEFI 啟動。
然後檢查我的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
分割區表格欄位顯示我正在使用 msdos MBR 分割區表(Linux 和 Windows 仍然常用的分割區表)。
因此,總而言之,在我的例子中,雖然引導分割區(主分割區)安裝在 /boot/efi 上,但它有效地使用了基於 BIOS 的開機載入程式。