本文整理自 shorinkiwata/archlinuxinstall,保留原教程的操作深度并进行匿名化与风险校正。安装包名、扩展、驱动和界面可能随滚动更新变化,以下命令均为阅读示例,没有在此任务中执行或验证。
操作前提#
本文展示的是 UEFI + Btrfs + GRUB 路径。先备份数据、确认磁盘及分区,区分新建 ESP 与已有双系统 ESP。cfdisk 写入分区表、mkfs.* 格式化均可能删除数据;只对明确允许重建的目标执行,不要格式化 Windows 的现有 ESP。所有 /dev/*_partition 或 /dev/EXAMPLE_DISK 都必须替换成现场确认的目标,不是可直接运行的设备名。
交换文件大小 4g 只是示例。休眠要求目标交换空间能容纳当时的镜像,并正确配置恢复位置。Btrfs 活跃 swapfile 所在子卷不能创建普通快照,单独的 @swap 有助于分离这个限制。
安装系统#
手动安装
参考链接: archlinux 简明指南 安装指南 - Arch Linux 中文维基
确认网络
ip link 查看网络接口
ip a 查看网络连接信息
ping archlinux.org 确认网络正常
iwctl 连接 wifi
iwctl
station wlan0 connect <WIFI_SSID>
exit
同步时间
timedatectl set-ntp true
硬盘分区
lsblk -p 查看当前分区情况
fdisk -l 小写字母l,查看详细分区信息
cfdisk /dev/EXAMPLE_DISK # 替换为已核对且允许重新分区的目标磁盘
新建 ESP 可从 1 GiB 开始规划,类型 EFI System;其余空间按需要划为 Linux filesystem。双系统已有 ESP 时先检查,不要重建或格式化它。
格式化分区
检查挂载和分区号,格式化会删除该分区数据。双系统现有 ESP 只挂载,不格式化。
lsblk -p 查看分区情况
- 格式化 efi 启动分区
mkfs.fat -F 32 /dev/efi_system_partition # 仅新建且允许擦除的 ESP
- 格式化 btrfs 根分区
mkfs.btrfs /dev/root_partition
btrfs 子卷
- 挂载
mount -t btrfs -o compress=zstd /dev/root_partition /mnt
- 创建子卷
btrfs subvolume create /mnt/@
btrfs subvolume create /mnt/@home
btrfs subvolume create /mnt/@swap
- 确认
btrfs subvolume list -p /mnt
- 取消挂载
umount /mnt
挂载
mount -t btrfs -o subvol=/@,compress=zstd /dev/root_partition /mnt #根目录
mount --mkdir -t btrfs -o subvol=/@home,compress=zstd /dev/root_partition /mnt/home #/home目录
mount --mkdir -t btrfs -o subvol=/@swap,compress=zstd /dev/root_partition /mnt/swap #/swap目录
mount --mkdir /dev/efi_partition /mnt/boot #/boot目录
mount --mkdir /dev/winefi_partition /mnt/winboot #windows的启动分区,为双系统引导做准备
df -h 复查挂载情况
安装系统
可选:下载速度慢的话
vim /etc/pacman.d/mirrorlist
拿出手机,浏览器搜索 archlinux中国镜像源,找一个镜像源添加
- 更新密钥
pacman -Syu archlinux-keyring
- 安装系统
pacstrap -K /mnt base base-devel linux linux-firmware btrfs-progs
-K 在目标中初始化空的 pacman 密钥环(隐含 -G)
base-devel是编译其他软件的时候用的
linux是内核,可以更换
linux-firmware是固件
btrfs-progs是btrfs文件系统的管理工具
- 安装必要的功能性软件
pacstrap /mnt networkmanager vim sudo amd-ucode
networkmanager 是联网用的
vim 是文本编辑器
sudo 和权限管理有关
amd-ucode 是微码,用来修复和优化cpu
设置 swap 参考链接:Swap - ArchWiki
创建 swap 文件
btrfs filesystem mkswapfile --size 4g --uuid clear /mnt/swap/swapfile
启动 swap
swapon /mnt/swap/swapfile
生成 fstab 文件
genfstab -U /mnt > /mnt/etc/fstab
change root
arch-chroot /mnt
主机名
在 /etc/hostname 写入自选主机名,例如 workstation,避免把个人设备名嵌入公开配置。
设置时间和时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
hwclock --systohc
本地化设置
vim /etc/locale.gen
取消en_US.UTF-8 UTF-8的注释
locale-gen
vim /etc/locale.conf
写入 LANG=en_US.UTF-8
设置 root 密码
passwd
安装引导程序
pacman -S grub efibootmgr os-prober
efibootmgr 管理uefi启动项
os-prober 用来搜索win11
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=ARCH
- 编辑 grub 的源文件
vim /etc/default/grub
可按排障需要去掉 quiet 或调整 loglevel;不要把关闭 watchdog 和硬件模块黑名单当作安装必需参数。
手动写入或者取消GRUB_DISABLE_OS_PROBER=false的注释
- 生成配置文件
grub-mkconfig -o /boot/grub/grub.cfg
完成安装
exit # 退出 arch-chroot
umount -R /mnt # 确认无忙碌挂载
reboot
启动网络
systemctl enable --now NetworkManager
连接 wifi
nmcli dev wifi connect <WIFI_SSID> password <WIFI_PASSWORD>
可选的终端演示工具
pacman -S fastfetch lolcat cmatrix
脚本安装
确认网络连接
- ip a 查看网络连接
- ping 一个网址确认网络正常
- 连接 wifi
iwctl #开启wifi连接
station wlan0 connect wifi名
在跳出的条目内输入密码
exit退出iwctl
- ping 一个网址确认网络正常
更新 archinstall
- 更新 archlinux-keyring
pacman -Syu archlinux-keyring
- 更新 archinstall
pacman -S archinstall
- archinstall 开启安装脚本(脚本内上下左右移动光标,回车选中,tab 给括号打勾,/ 左斜杠搜索)
设置镜像源
- mirror 选自己所在地区或国家,也可以不手动选,在 optional repositories 里开启 32 位源(multilib)玩游戏或者运行 windows 程序需要 32 位支持
磁盘分区 disk configuration
启动分区
wiki 推荐是 1GB,所以填入 1024MB,类型 fat32,挂载点是/boot
swap 交换空间
交换空间不必须等于 RAM;需要休眠时按实际镜像大小和可靠恢复测试规划。 swap 与虚拟内存和休眠有关,可以创建 swap 分区或者 swap 文件,二选一,前者配置更简单,后者配置稍复杂,但是更加灵活。 swap 分区 创建一个和内存大小相同的硬盘分区,类型选择 swap swap 文件 将所有剩余空间分到一个分区,类型选择 btrfs,设置 compress(透明压缩,可以节省磁盘空间),添加 sub volume。
- @ 对应 /
- @home 对应 /home
- @swap 对应 /swap 交换文件的创建方法:Swap - ArchWiki
btrfs filesystem mkswapfile --size 4g --uuid clear /swap/swapfile
swapon /swap/swapfile
vim /etc/fstab
写入
/swap/swapfile none swap defaults 0 0
其他
- bootloader 选择 grub,因为主流发行版用的都是 grub,配置简单,遇到问题时网上帖子多
- 设置 root 密码
- 设置普通用户,添加管理员权限
- profile 可以预装桌面环境,有需要的自行选择,选择桌面之后还可以选择安装显卡驱动
- 内核(kernel)根据硬件和负载选择;linux 与 linux-zen 都应验证功耗、响应和驱动兼容性
- networ configuration 选择第三项 networkmanager,因为主流桌面环境默认与这个集成
- additional pakages 里面选 vim 和 os-prober, zen 内核的话这里再选个 linux-zen-headers
- 设置时区
官方核对入口#
ArchWiki:EFI system partition。
参考与延伸
- 原教程:shorinkiwata/archlinuxinstall ↗
- ArchWiki:Installation guide ↗
- ArchWiki:EFI system partition ↗
- ArchWiki:Btrfs ↗
- ArchWiki:GRUB ↗
- pacstrap(8) ↗
根据技术笔记重新整理,示例使用通用名称。
沿专题继续阅读
Arch Linux
- 01Arch Linux 的哲学与安装规划
- 02内核管理、systemd-boot 与 UKI
- 03Pacman Hook、AUR 与构建安全
- 04Btrfs 子卷布局与 Snapper 快照
- 05LUKS2、Secure Boot 与 TPM2 加固
- 06性能选择与日常维护清单
- 07Pacman 常用命令与参数记忆
- 08Pacman 下载慢的诊断与镜像选择
- 09informant:Arch 新闻与 Pacman Hook
- 10Arch Linux 与 Btrfs:手动安装和 archinstall
- 11GNOME 桌面、输入法与快照配置
- 12GNOME 笔记本管理与桌面美化
- 13Arch Linux 的 KVM、GPU 直通与游戏
- 14Arch 桌面的交换空间、内核与排障