Archlinux Install
作安装镜像
WARNING制作安装盘之前,提前做好备份!!!
制作安装盘会格式化整个盘!!!
- 下载Archlinux镜像,从这里选择一个离你较近的镜像站点,下载一个
.iso结尾的文件。 - 刻录安装镜像
sudo dd if=Archlinux镜像位置 + 它的名字 of=你的安装盘 status=progress oflag=sync bs=4M启动安装镜像
- 插入你的安装盘,选择从它启动安装镜像
- 选择从UEFI模式启动
- 确保关闭了安全启动(Secure Boot)。Arch Linux 安装镜像不支持安全启动。
- 进入终端后,验证启动模式量否为UEFI模式:
cat /sys/firmware/efi/fw_platform_size- 如果返回
64,以64位 x64 UEFI启动。 - 如果返回
32,以32位 IA32 UEFI启动。 - 如果返回
No such file or directory,这可能是BIOS或者CSM启动模式,需要更改主板设置。
连接网络
NOTE安装Archlinux,需要连接网络。
确保网卡已一正常列出和启用。
ip link #显示当前的网卡及状态无线网络设置
NOTE使用无线网络前,先把要连接的无线网络名称设置为英文。
使用iwctl进行连接
iwctl # 进入交互式命令行device list # 列出无线网卡设备名,一般是wlan0station wlan0 connet wifi-name # 按`Enter`确认输入密码exit #退出使用有线网络
一般来说,正确的插入网线就可以连接上网络,可以使用ip address show命令查看
测试网络
ping qq.com -c 4 # 回车后,看到有数据返回,说明网络连接正常。若没有数据返回,检查前面是哪个步骤没有正确操作。更新系统时钟
timedatectl set-ntp true # 将系统时间和网络时间同步timedatectl status # 检查服务状态更新软件仓库镜像源
- 使用文本编辑器修改
/etc/pacman.d/mirrorlist文件换成国内的软件仓库镜像源。 - 使用reflector修改。
reflector --latest 10 --country China --age 12 --protocol https --sort rate --save /etc/pacman.d/mirrorlist同步软件源
pacman -Syu # 同步非本地软件仓库并升级系统的软件包。TIP网络连接成功后,可以用另一台设备
ssh远程连接要安装Archlinux的电脑。确保是同一局域网内的设备。Terminal window pacman -S openssh # 安装opensshsystemctl start sshd # 启动ssh服务passwd # 设置root用户密码ssh root@ip address # 在另一台设备上连接,Enter后输入root密码。
分区和格式化
WARNING分区操作的部分命令具有危险性!!!
在执行命令之前,做好数据备份!!!
分区
- 使用
lsblk命令查看当前磁盘分区的情况。选择你要安装Archlinux的硬盘。
TIP硬盘是IDE类型,显示为hdax
硬盘是stat类型,显示为sdax
硬盘是nvme类型,显示为nvmexnxpx
根据实际情况来选择
- 使用
fdisk命令对磁盘进行分区:
fdisk /dev/nvme0n1 # 对安装Archlinux的磁盘分区
进入fdisk工具后,会看到如上图所示的界面。可以通过m获取帮助。
- 创建分区
- 输入
g创建一个新的GPT分区表
- 创建EFI分区。
输入n按下Enter。选择分区数字1按Enter。选择起始块,默认即可按Enter。输入分区大小+1g,按Enter。
更改EFI分区类型。
输入t按Enter,输入uefi按Enter。

- 创建Swap分区。
输入n按Enter。选择分区,默认即可,按Enter。选择起始块,默认即可,按Enter。输入分区大小+2g(按实际情况) 1
更改Swap分区类型。
输入t,按Enter。输入2,按Enter。输入swap,按Enter。

- 创建根分区。
输入n,按Enter。选择分区数字,默认即可按Enter。选择起始块,默认即可按Enter。输入分区大小,可以直接选择剩余所有的空间,按Enter
分区类型不用更改。 - 输入
p查看分区,是否设置正确,检查无误后输入w,保存并退出。

WARNING💥💥!!!再次提醒!!!💥💥
仔细检查命令和操作的正确性!否则将出现不可预料的情况!
格式化分区
- 输入
lsblk查看分区情况
- 格式化EFI分区
mkfs.fat -F 32 /dev/nvme0n1p1 # 根据自己的设备输入对应的设备名- 格式化Swap分区
mkswap /dev/nvme0n1p2- 格式化 Btrfs 分区
mkfs.btrfs -L myarch /dev/nvme0n1p3 # -L 指定一个Lable- 格式化
Btrfs子卷
- 将
Btrfs分区挂载到/mnt下:
mount -t btrfs -o compress=zstd /dev/nvme0n1p3 /mnt- 创建
Btrfs子卷
btrfs subvolume create /mnt/@ # 创建 / 目录子卷btrfs subvolume create /mnt/@home # 创建 /home 目录子卷- 查看子卷情况
btrfs subvolume list -p /mnt挂载
- 挂载时,从根目录开始挂载。
mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1p3 /mnt # 挂载/目录mkdir -p /mnt/{home,boot} # 创建/home目录和/boot目录mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1p3 /mnt/home # 挂载/home目录mount /dev/nvme0n1p1 /mnt/boot # 挂载/boot目录swapon /dev/nvme0n1p2 # 开启swap分区- 使用
lsblk或df -h查看挂载情况

配置系统
- 通过
pacstrap安装:
pacstrap -K /mnt base base-devel linux linux-firmware btrfs-progs bash-completion vim # 可以把vim替换成你喜欢的文本编辑器经过一系列的刷屏后…

2. 生成fstab文件
genfstab -U /mnt > /mnt/etc/fstab- Chroot
arch-chroot /mnt- 在
/etc/hostname下设置主机名:
echo "myarch1" > /etc/hostname- 编辑
/etc/hosts文件
vim /etc/hosts添加以下内容:
127.0.0.1 localhost::1 localhost127.0.1.1 myarch1.localdomain myarch1- 设置Locale
- 编辑
/etc/locale.gen文件,去掉en_US>UTF-8,zh_CN.UTF-8前面的注释符号。
vim /etc/locale.gen- 使用
locale-gen生成locale。
locale-gen- 向
/etc/locale.conf写入。
echo 'LANG_=en_US.UTF-8' > /etc/locale.conf- 设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime- 设置硬件时间
hwclock --systohc- 设置root用户密码
passwd # Enter后,输入密码设置引导
使用grub
- 安装相应的包
pacman -S grub efibootmgr- 安装grub到EFI分区
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=Arch- 生成grub的配置文件
grub-mkconfig -o /boot/grub/grub.cfg使用Systemd-boot
📝要使用systemd-boot,首先要确保启动方式是UEFI模式!
- 安装UEFI启动管理器
bootctl install # 将systemd-boot安装到ESP提示esp指你的启动分区,/boot/efi或者/efi
取决于自己的设置
- 配置systemd-boot
- 编辑
/esp/loader/loader.conf文件:
default arch.conf # 默认启动项timeout 3console-mode autoeditor no- 创建启动项
vim /esp/loader/entries/arch.conftitle Arch Linux # 启动时的名称
linux /vmlinuz-linux #
initrd /initramfs-linux.img #
initrd /intel-ucode.img # 或者amd-ucode.img # 有装微码包可以写上
options root=UUID=<根分区的UUID> rw rootflags=subvol=@ #用Btrfs需要指定@子卷
#UUID可以用blkid查看blkid /dev/nvme0n1p3
- 更新
bootctl --noo-variables --graceful update或者:
systemctl enable systemd-boot-update.service使用 rEFInd
- 安装refind包
pacman -S refind- 安装到esp分区
refind-install- 配置rEFInd
- 修改refind_linux.conf文件
📝将root=UUID=<根分区的UUID> # btrfs需要加上 rootflags=subvol=@
- 修改refind.conf(可选)
vim /esp/EFI/refind/refind.conf #路径可能所有不同#找到 `memuentry "Arch Linux" 这一项,修改options参数将root=UUID=<根分区的UUID> # btrfs加上 rootflags=subvol=@
网络设置
使用NetworkManager
pacman -S networkmanager # 下载networkmanagersystemctl enable NetworkManager #启动networkmanager使用systemd-networkd + iwd
pacman -S iwdsystemctl enable iwdsystemctl enable systemd-networkdReboot
- 回到 live 环境
exit # 退出安装环境umount -R /mnt #卸载分区reboot # 重启Footnotes
-
内存容量大
分区设置为与内存容量相等或一半。
内存容量小分区设置为与内存容量的2倍。 ↩
Some information may be outdated
