创建可启动 Arch USB 闪存盘,但未显示为可启动

创建可启动 Arch USB 闪存盘,但未显示为可启动

问题

大家好!

请原谅,这可能是一个非常简单的问题,答案也很简单。我在启动到我引导并配置 Arch 的 USB 闪存盘时遇到一些困难。我使用的是 128GB Samsung Fit 3.1 USB-A 密钥,以防万一。

概要:我使用 Etcher 将(经过 shasum 检查的)Arch ISO 写入随机 USB 闪存盘。我启动到 LiveUSB 并插入我的 Samsung 3.1 密钥。我正确格式化了 USB 闪存盘以进行 GPT/UEFI 启动。我将 Arch 引导到密钥上,对其进行配置,将 GRUB2 安装到 ESP 中,配置 GRUB2,并从 MacOS 中祝福它。当我重新启动时,我的 Arch USB 密钥不会出现在栏中。我的 Mac 愉快地启动了我制作的 Arch LiveUSB,以及我制作的许多发行版的 LiveUSB,证明它已配置为允许 USB 启动。那么,为什么我看不到我的 Arch 系统,我错过了什么?

先感谢您。





完整日志

如果您想更具体地了解我为完成这些步骤所做的工作,请参阅以下完整内容:

下载 ISO

从镜像下载 ISO 或使用以下提供的链接下载它https://www.archlinux.org/download

使用 Etcher 检查 shasum,$ openssl sha1 path/to/arch.iso 将其写入 USB 闪存盘 重新启动计算机并引导至安装程序 (LiveUSB)

格式化 USB 闪存盘的分区

# fdisk -l 在此示例中,我们假设我们的 USB 密钥称为sdd

# parted /dev/sdd
. mktable gpt
. mkpart primary fat32 1MiB 261MiB
. set 1 esp on
. mkpart primary ext4 261MiB 100%
. name 1 ‘the-efi-partition’
. name 2 ‘archenemy-beta’
. quit

# parted /dev/sdd print 这里一切都好。

# mkfs.ext4 /dev/sdd2

# mkfs.fat -F32 /dev/sdd1

配置互联网

插入以太网电缆 # ping archlinux.org。一切看起来都不错。

助推拱门

# mount /dev/sdd2 /mnt

# mkdir /mnt/efi

# mount /dev/sdd1 /mnt/efi

# vi /etc/pacman.d/mirrorlist 打乱一些地理位置较近的镜子的优先顺序。

# pacstrap /mnt base base-devel

配置拱门

# genfstab -U /mnt >> /mnt/etc/fstab

# arch-chroot /mnt

[]# ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime

[]# hwclock --systohc

[]# vi /etc/locale.gen

[]# locale-gen

[]# locale -a 这里一切都好。

[]# echo “LANG=en_US.UTF-8” > /etc/locale.conf

[]# echo “KEYMAP=us” > /etc/vconsole.conf

[]# echo “archenemy-beta” > /etc/hostname

[]# vi /etc/hosts 写下以下内容:

127.0.0.1   localhost
::1     localhost
127.0.1.1   archenemy-beta.localdomain      archenemy-beta

[]# passwd

安装和配置 GRUB2

[]# pacman -S grub efibootmgr

[]# mkdir /boot/grub

[]# grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB

[]# grub-mkconfig -o /boot/grub/grub.cfg

[]# exit

# umount -R /mnt

祝福EFI分区

启动进入 MacOS

$ diskutil list 对于这个例子,我们将假设它为disk2

$ mkdir ~/efi

$ sudo mount -w -t msdos /dev/disk2s1 ~/efi

$ bless --folder ~/efi/EFI/GRUB --file ~/efi/EFI/GRUB/grubx64.efi

$ diskutil eject disk2

$ rm -rf ~/efi

答案1

我意识到问题是什么...我没有看到该页面用于 USB 安装所以我还没有做一些重要的步骤......

将和钩子/etc/mkinitcpio.conf移到钩子之前,并使用 重新创建初始 ramdisk 。blockkeyboardautodetectmkinitcpio -p linux

安装 GRUB 时,我忘记添加--removable我认为这是非常重要的一步。抱歉浪费您的时间!

相关内容