我发现了一个我以为丢失的 SSD,并决定尝试 Arch Linux 构建。我有一个带有专有 UEFI 的华硕主板,并且该机器是从具有 Windows 许可证的商店购买的(不确定这是否会影响启动,所以我想我会提出它)。
首先,这是一个lsblk
:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdc 8:32 0 111.8G 0 disk
|_sdc1 8:33 0 512M 0 part /boot
|_sdc2 8:34 0 12G 0 part [SWAP]
|_sdc3 8:35 0 99.3G 0 part /
还有一个cat /etc/fstab
:
# /dev/sdc1 UUID=<sdc1_uuid>
UUID=<sdc1_uuid> /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2
# /dev/sdc2 UUID=<sdc2_uuid>
UUID=<sdc2_uuid> none swap defaults 0 0
# /dev/sdc3 LABLE=system
UUID=<sdc3_uuid> / ext4 rw,relatime,data=ordered 0 1
我的设备列表项来自fdisk -l
:
Disk /dev/sdc: 111.8 GiB, 120034123776 bytes, 234441648 sectors
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: 0xbb103c57
Device Boot Start End Sectors Size Id Type
/dev/sdc1 * 2048 1050623 1048576 512M b W95 FAT32
/dev/sdc2 1050624 26241023 25190400 12G 83 Linux
/dev/sdc3 26241024 234440703 208199680 99.3G 83 Linux
我在引导装载程序Arch Linux 初学者指南的步骤,我认为我需要遵循系统引导步骤也一样。我然后开始阅读自动挂载initramfs
文章,并考虑询问步骤 4 中提到的内核和文件所在的位置,但阅读后我不确定是否systemd-boot
会尝试替换我已经获得的 UEFI 固件,或者我的 UEFI 固件是否需要它自动挂载我的boot
分区并随后与我的SWAP
分区进行通信/
?
或者我不需要担心它,因为我已经指定了启动分区并运行了以下命令?
# mkdir -p /mnt/boot
# mount /dev/sdc2 /mnt/boot
如果我已经运行了上面的操作并且完成了而不用担心引导加载程序,我是否可以从我的 UEFI 引导选项中选择 SSD(正如我的意图),因为我已经格式化了指定的引导分区并且跑了pacstrap
?或者如果没有实时 Linux 光盘,它会无法启动,因此我可以手动挂载分区吗?
或者我完全被误导了?
我尝试放弃引导加载程序步骤并运行bootctl --path=/dev/sdc1 install
,但出现以下错误:
File system "/dev/sdc1" is not a FAT EFI System Partition (ESP) file system.
如果我的所有磁盘实用程序都显示满足要求(即它已/boot
格式化fat32
并显示为vfat
我的fstab
),为什么我会收到一条错误消息,指出该磁盘不是其他工具显示的格式是?
答案1
确保在分区上创建文件系统
答案2
EFI 系统分区还有一项要求:其类型应为 EF00 或 GUID C12A7328-F81F-11D2-BA4B-00A0C93EC93B。这个GUID是分区的类型,是一个固定值,而不是分区本身的GUID。