Arch Linux 是一个轻量级、灵活且高度可定制的 Linux 发行版,它遵循 KISS(Keep It Simple, Stupid)原则,但安装过程相比其他发行版(如 Ubuntu 或 Fedora)更具挑战性。对于新手来说,这可能看起来令人生畏,但通过本指南,你将从零开始,一步步完成安装。我们将详细解释每个步骤,包括分区、网络配置、软件包安装和基本配置。同时,我们会讨论常见问题及其解决方案,帮助你轻松上手。

本指南基于最新的 Arch Linux 安装 ISO(截至 2023 年),假设你使用 UEFI 引导系统(这是现代 PC 的标准)。如果你的系统是 BIOS/Legacy,请相应调整引导加载程序部分。安装前,请确保你有稳定的互联网连接、一个至少 20GB 的空闲硬盘,以及一个 USB 驱动器来创建安装介质。整个过程大约需要 1-2 小时,取决于你的硬件和经验。

1. 准备工作:创建安装介质和验证环境

在开始安装之前,你需要准备一个可引导的 Arch Linux USB 驱动器。这一步至关重要,因为 Arch 的安装环境是一个实时(Live)系统,它会加载到内存中运行。

步骤 1.1:下载 Arch Linux ISO

  • 访问 Arch Linux 官方网站(https://archlinux.org/download/),选择最近的镜像站点下载 ISO 文件。推荐使用 torrent 下载以获得更快的速度。
  • 验证 ISO 的完整性:下载后,使用 SHA256 校验和验证文件。假设你使用 Linux 或 macOS,可以在终端运行:
     sha256sum archlinux-*.iso 

    将输出与官网提供的校验和比较。如果使用 Windows,可以使用工具如 HashMyFiles 或 PowerShell 的 Get-FileHash 命令:

     Get-FileHash -Path C:pathtoarchlinux-*.iso -Algorithm SHA256 

步骤 1.2:创建可引导 USB

  • 在 Linux 上,使用 dd 命令(小心操作,确保目标设备正确):
     sudo dd bs=4M if=/path/to/archlinux-*.iso of=/dev/sdX status=progress && sync 

    替换 /dev/sdX 为你的 USB 设备(如 /dev/sdb)。使用 lsblk 命令确认设备名称。

  • 在 Windows 上,使用 Rufus 工具(https://rufus.ie/):选择 ISO 文件,分区方案为 GPT(UEFI),点击“开始”。
  • 在 macOS 上,使用 dd 或 Etcher 工具。

步骤 1.3:引导进入安装环境

  • 插入 USB,重启电脑,进入 BIOS/UEFI 设置(通常按 Del、F2 或 F12 键)。
  • 禁用 Secure Boot(如果启用),并将 USB 设为第一引导设备。
  • 保存退出,引导进入 Arch Linux 菜单。选择 “Boot Arch Linux (x86_64)” 并按 Enter。
  • 成功后,你将看到一个命令行提示符:root@archiso ~ #。这表示你已进入安装环境。

常见问题及解决方案

  • 问题:无法引导 USB。解决方案:检查 BIOS 中的引导顺序,确保 UEFI 模式启用。如果是旧硬件,尝试 Legacy 模式。
  • 问题:网络未连接。安装环境默认不连接网络,我们将在下一步配置。

2. 配置网络和更新系统时间

Arch 安装需要互联网来下载软件包。首先,检查网络接口并连接。

步骤 2.1:检查网络接口

运行以下命令查看可用接口:

ip link 

输出类似:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 08:00:27:xx:xx:xx brd ff:ff:ff:ff:ff:ff 
  • 如果使用有线网络,通常接口名为 enpXsYeth0
  • 对于无线网络,使用 iwctl(iwd 工具)。

步骤 2.2:连接网络

  • 有线网络:通常自动连接。如果未连接,运行:

    dhclient enp0s3 # 替换为你的接口名 

    测试连接:ping archlinux.org -c 4

  • 无线网络

    iwctl # 进入交互模式 

    在 iwctl 提示符下:

    [iwd]# station wlan0 scan # 扫描网络,替换 wlan0 为你的无线接口 [iwd]# station wlan0 connect SSID # 连接,输入密码 [iwd]# exit 

    测试:ping archlinux.org -c 4

步骤 2.3:更新系统时间

确保时间正确,以避免证书验证问题:

timedatectl set-ntp true timedatectl status # 检查时间 

常见问题及解决方案

  • 问题:无网络接口。解决方案:检查硬件(lspci | grep Network),或使用 USB 网络共享。
  • 问题:iwctl 未找到。确保在最新 ISO 中已包含;如果缺失,使用 pacman -Sy iwd 安装(但需先有网络)。
  • 问题:ping 失败。检查防火墙或路由器设置,尝试 ping 8.8.8.8 测试 DNS。

3. 磁盘分区和格式化

这是安装的核心步骤。我们将使用 UEFI 系统为例,创建一个 EFI 分区、根分区(/)和可选的交换分区。推荐使用 GPT 分区表。

步骤 3.1:识别磁盘

运行 lsblk 查看磁盘:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 100G 0 disk ├─sda1 8:1 0 512M 0 part └─sda2 8:2 0 99.5G 0 part 

假设 /dev/sda 是目标磁盘(警告:这将擦除数据!备份重要文件)。

步骤 3.2:分区磁盘

使用 fdisk 工具(简单易用):

fdisk /dev/sda 

在 fdisk 提示符下,按顺序输入:

  • g:创建 GPT 分区表。
  • n:创建新分区。分区号 1,起始扇区(默认),大小 +512M(EFI)。
  • t:类型 1(EFI System)。
  • n:分区号 2,起始默认,大小 +20G(根分区,根据需要调整)。
  • t:类型 20(Linux filesystem)。
  • n:分区号 3,起始默认,大小 +4G(交换分区,可选)。
  • t:类型 19(Linux swap)。
  • w:写入并退出。

示例 fdisk 交互(简化):

Command (m for help): g Created a new GPT disklabel (GUID: xxxx). Command (m for help): n Partition number (1-128, default 1): 1 First sector (2048-..., default 2048): [Enter] Last sector, +/-sectors or +/-size{K,M,G,T,P}: +512M Command (m for help): t Partition type or alias (type L to list all): 1 Command (m for help): n Partition number (2-128, default 2): 2 First sector: [Enter] Last sector: +20G Command (m for help): t Partition number (2-128, default 2): 2 Partition type or alias: 20 Command (m for help): n Partition number (3-128, default 3): 3 First sector: [Enter] Last sector: +4G Command (m for help): t Partition number (3-128, default 3): 3 Partition type or alias: 19 Command (m for help): w 

步骤 3.3:格式化分区

  • 格式化 EFI 分区为 FAT32:
     mkfs.fat -F32 /dev/sda1 
  • 根分区为 ext4:
     mkfs.ext4 /dev/sda2 
  • 交换分区:
     mkswap /dev/sda3 swapon /dev/sda3 

常见问题及解决方案

  • 问题:fdisk 报错“设备或资源忙”。解决方案:确保未挂载磁盘,使用 umount -a 卸载所有分区。
  • 问题:分区大小错误。重新运行 fdisk,使用 d 删除分区后重试。
  • 问题:UEFI 模式未检测。在 BIOS 中确认引导模式,使用 ls /sys/firmware/efi/efivars 检查;如果为空,使用 BIOS 模式并调整分区(无 EFI,使用 GRUB)。

4. 挂载分区和安装基本系统

现在挂载分区并使用 pacstrap 安装 Arch Linux。

步骤 4.1:挂载分区

mount /dev/sda2 /mnt # 根分区 mkdir /mnt/boot mount /dev/sda1 /mnt/boot # EFI 分区 

如果使用单独的 /home 分区,也挂载它。

步骤 4.2:安装基本软件包

使用 pacstrap 脚本安装 base 和其他必需包:

pacstrap /mnt base linux linux-firmware vim sudo 
  • base:核心系统。
  • linux:内核。
  • linux-firmware:硬件驱动。
  • vim:文本编辑器(可选,用 nano 代替)。

过程可能需要 10-30 分钟,取决于网络。

步骤 4.3:生成 fstab

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

检查:cat /mnt/etc/fstab

常见问题及解决方案

  • 问题:pacstrap 下载慢。解决方案:编辑 /etc/pacman.d/mirrorlist(在安装环境中),将中国镜像(如 tuna.tsinghua.edu.cn)移到顶部:
     Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch 

    然后运行 pacman -Sy 更新。

  • 问题:磁盘空间不足。检查分区大小,使用 df -h
  • 问题:内核安装失败。确保网络稳定,重试 pacstrap。

5. Chroot 进入新系统并配置

Chroot 到新安装的系统,进行基本配置。

步骤 5.1:Chroot

arch-chroot /mnt 

现在你以 root 身份在新系统中。

步骤 5.2:设置时区和本地化

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime hwclock --systohc 

编辑 /etc/locale.gen,取消注释 zh_CN.UTF-8 UTF-8en_US.UTF-8 UTF-8

vim /etc/locale.gen 

然后:

locale-gen echo "LANG=en_US.UTF-8" > /etc/locale.conf 

步骤 5.3:网络配置

设置主机名:

echo "myarch" > /etc/hostname 

编辑 /etc/hosts

127.0.0.1 localhost ::1 localhost 127.0.1.1 myarch.localdomain myarch 

步骤 5.4:设置 root 密码和创建用户

passwd # 设置 root 密码 useradd -m -G wheel username # 创建用户,替换 username passwd username # 设置用户密码 

安装 sudo 并配置:

pacman -S sudo visudo # 取消注释 %wheel ALL=(ALL) ALL 

常见问题及解决方案

  • 问题:chroot 失败。确保分区正确挂载,检查 /mnt 下是否有 /etc 等目录。
  • 问题:时区设置无效。确认 /usr/share/zoneinfo/ 存在对应文件。
  • 问题:用户无法 sudo。确保 visudo 正确编辑,重启后测试。

6. 安装引导加载程序(Bootloader)

对于 UEFI,使用 systemd-boot。

步骤 6.1:安装引导程序

bootctl install 

步骤 6.2:创建引导条目

编辑 /boot/loader/entries/arch.conf

title Arch Linux linux /vmlinuz-linux initrd /initramfs-linux.img options root=/dev/sda2 rw 

如果使用 UUID(推荐),先获取:blkid /dev/sda2,然后替换 root=UUID=xxxx

编辑 /boot/loader/loader.conf

default arch timeout 3 editor 0 

常见问题及解决方案

  • 问题:bootctl 报错“not a UEFI system”。切换到 GRUB:pacman -S grub efibootmgr,然后 grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUBgrub-mkconfig -o /boot/grub/grub.cfg
  • 问题:引导后黑屏。检查内核参数,添加 nomodeset 到 options 行测试。

7. 安装桌面环境和网络管理器(可选,但推荐新手)

新手上手需要图形界面。安装 GNOME 桌面和 NetworkManager。

步骤 7.1:安装 Xorg 和 GNOME

pacman -S xorg gnome networkmanager 

步骤 7.2:启用服务

systemctl enable gdm systemctl enable NetworkManager 

步骤 7.3:重启系统

exit # 退出 chroot umount -a # 卸载分区 reboot 

移除 USB,系统将引导进入 GNOME。

常见问题及解决方案

  • 问题:GNOME 未启动。安装 mesa 驱动:pacman -S mesa,或检查显卡(NVIDIA:nvidia 包)。
  • 问题:无网络。重启后运行 nmtui 或使用 NetworkManager applet。
  • 问题:分辨率低。安装 xf86-video-intel 或 AMD/NVIDIA 驱动。

8. 后续优化和常见问题总结

安装后,更新系统:

sudo pacman -Syu 

安装 AUR 助手 yay(可选):

sudo pacman -S git base-devel git clone https://aur.archlinux.org/yay.git cd yay makepkg -si 

常见问题总结

  • 性能问题:使用 pacman -S linux-zen 替换内核以获得更好性能。
  • 软件安装:Arch 使用 pacman,搜索:pacman -Ss keyword,安装:pacman -S package
  • 更新失败:编辑 mirrorlist,运行 pacman -Syu
  • 新手提示:阅读 Arch Wiki(https://wiki.archlinux.org/),它是最佳资源。加入 Arch 论坛求助。

通过这些步骤,你已成功安装 Arch Linux。它可能需要时间适应,但其灵活性将带来巨大回报。如果遇到特定问题,提供更多硬件细节以获取针对性帮助。享受你的 Arch 之旅!