跳转至内容

安装指南

(重定向自 新手指南)

本文档介绍了如何使用由官方安装镜像制作的安装介质启动 Live 系统并安装 Arch Linux。安装介质提供了辅助功能,详见 以辅助选项安装 Arch Linux。如需其他安装方式,请参见 Category:安装过程

在安装之前,建议先查看 FAQ(常见问题)。关于本文档中使用的约定,请参见 帮助:阅读。特别需要注意的是,代码示例可能包含必须手动替换的占位符(以 斜体 格式显示)。

本指南力求简洁,建议您按照各章节呈现的顺序进行操作。如需更详细的说明,请参阅本指南中链接的相关 ArchWiki 文章或各类程序的 手册页 (man pages)。对于互动式帮助,也可以使用 IRC 频道论坛

Arch Linux 应该能运行在任何兼容 x86_64 的机器上,且内存至少为 512 MiB,不过启动安装用的 Live 系统需要更多内存。[1] 基本安装应占用不到 2 GiB 的磁盘空间。由于安装过程需要从远程仓库获取软件包,本指南假设您已有可用的互联网连接。

安装前准备

获取安装镜像

访问 下载 页面,根据您的启动方式,获取 ISO 文件或网络启动 (netboot) 镜像,以及相应的 PGP 签名。

验证签名

建议在使用前验证镜像签名,特别是从 HTTP 镜像源 下载时,因为这些下载内容通常容易被截获以 提供恶意镜像

ISO PGP 签名https://archlinux.org.cn/download/#checksums 下载到 ISO 所在的目录,并按照该处的说明进行验证。

或者,在现有的 Arch Linux 安装中运行

$ pacman-key -v archlinux-version-x86_64.iso.sig
  • 如果签名本身是从镜像站点而非 archlinux.org 下载的,则签名可能被篡改。在这种情况下,请确保用于解码签名的公钥已由另一个可信的密钥签名。gpg 命令将输出公钥的指纹。
  • 验证签名真实性的另一种方法是确保公钥指纹与签署 ISO 文件的 Arch Linux 开发者 的密钥指纹一致。有关验证密钥的公钥过程的更多信息,请参见 Wikipedia:公钥加密

准备安装介质

ISO 可以通过 USB 闪存盘光盘 或带有 PXE 的网络提供给目标机器:请参考相应文章,从 ISO 文件准备您的安装介质。

对于网络启动镜像,请参考 网络启动#从 USB 闪存盘启动 来准备用于 UEFI 启动的 USB 闪存盘。

启动 Live 环境

注意: Arch Linux 安装镜像不支持安全启动 (Secure Boot)。您需要 禁用安全启动 才能启动安装介质。如果需要,可以在完成安装后设置 安全启动
  1. 将当前启动设备指向包含 Arch Linux 安装介质的设备。通常是在 POST 阶段按某个键实现的,正如开机画面上所指示的那样。详情请参阅您的主板手册。
  2. 当安装介质的引导加载程序菜单出现时:
    • 如果您使用的是 ISO,选择 Arch Linux install medium 并按 Enter 进入安装环境。
    • 如果您使用的是网络启动镜像,从 Mirror 菜单中选择地理位置相近的镜像,然后选择 Boot Arch Linux 并按 Enter
      提示
  3. 您将以 root 用户身份登录到第一个 虚拟控制台,并看到 Zsh 的 Shell 提示符。

要切换到不同的控制台(例如,在安装的同时使用 Lynx 查看本指南),请使用 Alt+方向键 键盘快捷键。若要 编辑 配置文件,可以使用 mcedit(1)nanovim。安装介质中包含的软件包列表请参见 pkglist.x86_64.txt

设置控制台键盘布局和字体

默认的 控制台键映射US(美式)。可以使用以下命令列出可用布局:

# localectl list-keymaps

要设置键盘布局,请将布局名称传给 loadkeys(1)。例如,要设置 德语 键盘布局:

# loadkeys de-latin1

控制台字体 位于 /usr/share/kbd/consolefonts/,同样可以使用 setfont(8) 设置(省略路径和文件扩展名)。例如,要使用适合 HiDPI 屏幕 的最大字体之一,运行:

# setfont ter-132b

验证启动模式

要验证启动模式,请检查 UEFI 位数

# cat /sys/firmware/efi/fw_platform_size
  • 如果命令返回 64,则系统是以 UEFI 模式启动的,且拥有 64 位 x64 UEFI。
  • 如果命令返回 32,则系统是以 UEFI 模式启动的,且拥有 32 位 IA32 UEFI。虽然这受支持,但它会将引导加载程序的选择限制在支持混合模式启动的范围内。
  • 如果返回 No such file or directory,则系统可能是以 BIOS (或 CSM) 模式启动的。

如果系统没有以您想要的模式启动(UEFI 还是 BIOS),请参考您的主板手册。

连接到互联网

要在 Live 环境中设置网络连接,请执行以下步骤:

  1. 确保您的 网络接口 已列出并启用,例如使用 ip-link(8)
    # ip link
  2. 对于无线网络和 WWAN,确保网卡没有被 rfkill 锁定。
  3. 连接到网络:
    • 以太网——插上网线。
    • Wi-Fi——使用 iwctl 进行无线网络认证。
    • 移动宽带调制解调器——使用 mmcli 工具连接到移动网络。
  4. 配置您的网络连接:
  5. 连接可以用 ping 验证:
    # ping ping.archlinux.org
注意: 在安装镜像中,systemd-networkdsystemd-resolvediwdModemManager 已预配置并默认启用。这在安装后的系统中并非如此。

Update the system clock

Live 系统需要准确的时间,以防止软件包签名验证失败和 TLS 证书错误。在 Live 环境中,systemd-timesyncd 服务默认启用,一旦建立互联网连接,时间将自动同步。

使用 timedatectl(1) 确保系统时钟已同步:

# timedatectl

硬盘分区

当硬盘被 Live 系统识别后,会被分配给一个 块设备,例如 /dev/sda/dev/nvme0n1/dev/mmcblk0。要识别这些设备,请使用 lsblkfdisk

# fdisk -l

romloopairootfs 结尾的结果可以忽略。以 rpmbboot0boot1 结尾的 mmcblk* 设备也可以忽略。

注意: 如果磁盘没有显示,请确保磁盘控制器不在 RAID 模式
提示: 在分区前,检查您的 NVMe 驱动器和高级格式硬盘驱动器是否正在使用 最佳逻辑扇区大小

对于所选设备,以下 分区必须的

使用 分区工具(如 fdisk)修改分区表。例如:

# fdisk /dev/the_disk_to_be_partitioned
  • 花点时间规划长期的分区方案,以避免将来进行风险大且复杂的转换或重新分区操作。
  • 如果您想为 LVM系统加密RAID 创建任何堆叠块设备,请现在操作。
  • 如果您想要从中启动的磁盘 已经有一个 EFI 系统分区,请不要再创建一个,而是使用现有的分区。
  • 交换 (Swap) 空间可以设置在支持它的文件系统的 交换文件 上。或者,可以在安装系统后通过设置 zram 上的交换 来完全避免基于磁盘的交换。

示例布局

使用 GPT 的 UEFI
安装系统上的挂载点 分区 分区类型 建议大小
/boot1 /dev/efi_system_partition EFI 系统分区 1 GiB
[SWAP] /dev/swap_partition Linux swap 至少 4 GiB
/ /dev/root_partition Linux x86-64 root (/) 设备剩余空间。至少 23–32 GiB。
  1. 其他挂载点(如 /efi)也是可能的,前提是所用的引导加载程序能够从根卷加载内核和 initramfs 镜像。参见 Arch 启动过程#引导加载程序 中的警告。
使用 MBR 的 BIOS
安装系统上的挂载点 分区 分区类型 建议大小
[SWAP] /dev/swap_partition Linux swap 至少 4 GiB
/ /dev/root_partition Linux 设备剩余空间。至少 23–32 GiB。

另见 分区#示例布局

格式化分区

创建分区后,必须使用适当的 文件系统 格式化每个新创建的分区。详情请参见 文件系统#创建文件系统

例如,要在 /dev/root_partition 上创建 Ext4 文件系统,请运行:

# mkfs.ext4 /dev/root_partition

如果您为 交换空间 创建了分区,请使用 mkswap(8) 对其进行初始化:

# mkswap /dev/swap_partition
注意: 对于堆叠块设备,请将 /dev/*_partition 替换为适当的块设备路径。

如果您创建了 EFI 系统分区,请使用 mkfs.fat(8) 将其 格式化 为 FAT32。

警告: 仅在分区步骤中创建了 EFI 系统分区时才对其进行格式化。如果磁盘上预先已存在 EFI 系统分区,重新格式化它可能会破坏其他已安装操作系统的引导加载程序。
# mkfs.fat -F 32 /dev/efi_system_partition

挂载文件系统

挂载 根卷到 /mnt。例如,如果根卷是 /dev/root_partition

# mount /dev/root_partition /mnt

/mnt 下创建任何剩余的挂载点(例如 /mnt/boot 用于 /boot),并按相应的分层顺序挂载卷。

提示: 运行带有 --mkdir 选项的 mount(8) 来创建指定的挂载点。或者,预先使用 mkdir(1) 创建它。

对于 UEFI 系统,挂载 EFI 系统分区。例如:

# mount --mkdir /dev/efi_system_partition /mnt/boot

如果您创建了 交换 卷,请使用 swapon(8) 启用它:

# swapon /dev/swap_partition

genfstab(8) 稍后将检测已挂载的文件系统和交换空间。

安装

选择镜像源

要安装的软件包必须从 镜像服务器 下载,这些服务器定义在 /etc/pacman.d/mirrorlist 中。在列表中越靠前的镜像,在下载软件包时具有越高的优先级。

在 Live 系统中,所有 HTTPS 镜像都已启用(即未被注释)。最上方的全球镜像对大多数人来说应该足够快,但您可能仍想检查该文件以确定是否满意。如果不满意,请相应地 编辑 该文件,并将地理位置最近的镜像移动到列表顶部,但也应考虑其他标准。或者,您可以使用 reflector 根据各种标准创建镜像列表文件。

此文件稍后将被 pacstrap 复制到新系统中,因此值得提前配置好。

安装必需的软件包

除了 /etc/pacman.d/mirrorlist,没有任何配置会从 Live 环境转移到安装好的系统中。唯一必须安装的软件包是 base,它不包括 Live 安装环境中的所有工具,因此通常需要安装更多软件包。

特别是,请查阅以下软件并安装您需要的所有内容:

作为对比,Live 系统中可用的软件包可以在 pkglist.x86_64.txt 中找到。

要安装更多软件包或软件包组,请将名称附加到下方的 pacstrap(8) 命令后(以空格分隔),或者在 chroot 进入新系统 后使用 pacman 进行 安装

例如,一个包含 Linux 内核 和常用硬件固件的基础安装:

# pacstrap -K /mnt base linux linux-firmware
提示
  • 您可以将 linux 替换为您选择的 内核 包,或者在 容器 中安装时完全省略它。
  • 在虚拟机或容器中安装时,可以省略固件包的安装。
  • pacstrap 中的初始软件包选择只需包含系统启动所需的内容;所有其他软件都可以在安装后进行安装或替换。

配置系统

Fstab

要让系统启动时自动挂载所需的文件系统(如用于引导目录 /boot 的分区),请生成一个 fstab 文件。使用 -U-L 选项分别通过 UUID 或卷标进行定义:

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

检查生成的 /mnt/etc/fstab 文件,如有错误请 编辑 它。

Chroot

为了直接与新系统的环境、工具和配置进行交互,如同已经启动进入该系统一样执行后续步骤,请 change root (chroot) 进入新系统:

# arch-chroot /mnt

时间

为了方便起见(例如显示正确的本地时间或处理夏令时),请设置 时区

# ln -sf /usr/share/zoneinfo/Area/Location /etc/localtime

运行 hwclock(8) 以生成 /etc/adjtime

# hwclock --systohc

此命令假设硬件时钟已设置为 UTC。详见 系统时间#时间标准

为了防止时钟漂移并确保时间准确,请使用 网络时间协议 (NTP) 客户端(如 systemd-timesyncd)设置 时间同步

本地化

要使用正确的区域和语言特定格式(如日期、货币、小数点分隔符),请 编辑 /etc/locale.gen 并取消注释您将使用的 UTF-8 本地化选项 (locales)。通过运行以下命令生成本地化文件:

# locale-gen

创建 locale.conf(5) 文件,并相应地 设置 LANG 变量

/etc/locale.conf
LANG=en_US.UTF-8

如果您 设置了控制台键盘布局,请在 vconsole.conf(5) 中使更改永久生效:

/etc/vconsole.conf
KEYMAP=de-latin1

网络配置

要为您的系统分配一个一致且可识别的名称(在网络环境中特别有用),请 创建 hostname 文件:

/etc/hostname
yourhostname
提示: 有关选择主机名的建议,请参见 RFC 1178。如 hostname(7) 中所述,它必须包含 1 到 63 个字符,仅使用小写字母 az、数字 09-,且不得以 - 开头。

完成新安装环境的 网络配置。这可能包括安装合适的 网络管理 软件、根据需要进行配置并启用其 systemd 单元以便在开机时启动。

Initramfs

通常不需要创建新的 initramfs,因为在通过 pacstrap 安装 内核 包时已经运行了 mkinitcpio

对于 LVM系统加密RAID,请修改 mkinitcpio.conf(5) 并重新创建 initramfs 镜像。如果您 更改了默认控制台键盘映射,则只需重新创建 initramfs:

# mkinitcpio -P

Root 密码

root 用户 设置一个安全的 密码,以允许执行管理操作:

# passwd

引导加载程序

选择适合您分区方案的引导加载程序并安装它。查看 Arch 启动过程#引导加载程序 中的说明和对比表以做出选择,然后按照其专门页面上的安装说明进行操作。

重启

输入 exit 或按 Ctrl+d 退出 chroot 环境。

(可选)使用 umount -R /mnt 手动卸载所有分区:这可以发现任何“忙碌”的分区,并使用 fuser(1) 查找原因。

最后,输入 reboot 重启机器:任何仍挂载的分区都将由 systemd 自动卸载。记得移除安装介质,然后使用 root 账户登录新系统。

安装后工作

参见 常规建议 以了解系统管理方向和安装后教程(如创建非特权用户账户、设置图形用户界面、声音或触摸板)。

有关可能感兴趣的应用程序列表,请参见 应用程序列表