借助Archboot安装Archlinux并开启安全启动
借助Archboot安装Archlinux并开启安全启动
Archboot的启动
MOK导入hash
正常情况下,会遇到下面的错误:

按下回车,进入如图界面:

选择Enroll hash from disk
选择以下文件:
ARCHBOOT/EFI/BOOT/
内的所有64位efiARCHBOOT/boot/vmlinuz-x86_64
!请一定导入导入此文件!
安装前配置
1. 系统时间&硬盘分区
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
使用WinPE提前预留空间并随意创建一个任何格式的分区,方便之后使用。
这一步请在win系统下完成
2. 重启至Archboot
出现下图界面时,按下CTRL-C
进入bash

3. 更新时间
timedatectl set-ntp true
timedatectl status
4. 更改镜像源
编辑/etc/pacman.d/mirrorlist
,保留一个国内镜像即可。
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
#Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
#Server = https://repo.huaweicloud.com/archlinux/$repo/os/$arch
...
5. 分区(Btrfs)
5.1 格式化分区
nvmeYYY
为Arch分区,nvmeXXX
为EFI分区。
mkfs.btrfs -L Arch /dev/nvmeYYY
mkfs.vfat -F32 /dev/nvmeXXX
5.2 挂载并创建子卷
注:Archboot的安装程序识别的挂载点是/mnt/install
mount -t btrfs -o compress=zstd /dev/nvmeYYY /mnt/install
btrfs subvolume create /mnt/install/@
btrfs subvolume create /mnt/install/@home
btrfs subvolume create /mnt/install/@swap
5.3 创建挂载点
umount -R /mnt/install
mount -t btrfs -o subvol=/@ /mnt/install
mkdir -p /mnt/install/{boot,swap,home}
umount -R /mnt/install
请务必卸载分区,稍后使用Archboot的安装程序进行挂载,避免出现grub相关错误!
5.4 使用Archboot的安装程序挂载分区
输入setup
进入安装程序,选择1. Prepare Storage Device

选择4. Set Filesystem Mountpoints

挂载分区,但先不挂载swap分区

选择Root Partition

是否格式化,选择No

选择@
子卷

选择你需要的压缩算法。
选择ESP分区

选择/boot

挂载额外分区,过程参考挂载root分区,最后选择DONE
,完成挂载


生成fstab:
genfstab -U /mnt/install >> /mnt/install/etc/fstab
6. 安装系统
6.1 安装基本包
你既可以使用Archboot的安装程序2. Install Packages
,也可以在新的tty窗口自行安装
pacstrap -K /mnt/install base base-devel linux-zen linux-zen-headers btrfs-progs neovim networkmanager terminus-font intel-ucode polkit
#AMD请用amd-ucode
#Archboot默认安装以下包 base linux polkit btrfs-progs dosfstools terminus-font linux-firmware
#这里我自行安装(因为我要用linux-zen)
6.2 配置
可通过Archboot的安装程序进行,也可通过arch-chroot /mnt/install
进行
自行配置和各文件样例请移步 archlinux基础安装
MKINITCPIO EARLY USERSPACE安装程序提供Busybox
和Systemd
,建议选择Systemd
安装引导
借助Archboot的安装程序,选择4. Install BootLoader

注:当你使用linux-zen时,你需要在下面的grub配置中添加-zen
后缀,否则无法正常引导
他们分别是:/vmlinuz-linux
和/initramfs-linux
,修改为/vmlinuz-linux-zen
和/initramfs-linux-zen

确认秘钥保存位置

自定义CN名

输入MOK导入时需要的密码(简单即可),重复输入两遍

最后一步:
进入新tty,编辑/etc/pacman.d/hooks/999-sign_kernel_for_secureboot.hook
更改Target = linux
为你所用的内核,如Target = linux-zen
,并重新安装:
pacman -S linux-zen
完成kernel签名,重启,进入MOK,导入秘钥:


大功告成:

后续
请自行参阅桌面环境与常用应用安装和我的文章Linux实用建议
Copyright Notice: Unless otherwise stated, this article is an original work. Copyright belongs to VConet的杂物间. Licensed under CC BY-NC-SA 4.0. Please cite the source when reprinting!
Article URL: https://old.vconet.top/archives/arch-secure-boot-by-archboot.html