Installation guide (简体中文)
本文将指导如何用官方安装镜像启动的 Live 系统安装 Arch Linux。建议在安装前阅读 FAQ。对于本文中使用的惯用术语,请参阅 Help:Reading。请注意,代码段可能会有占位符(格式是 italics
),你可能需要手动去掉它们。
有关更详细的说明,请阅读本指南内相应的 ArchWiki 文章或各类程序的手册。有关配置的概述,请参阅 archlinux(7)。若需要交互帮助,可以使用 IRC 频道 和 论坛。
Arch Linux 能在任何内存空间不小于 512MB 的 x86_64 兼容机上运行。用 base 组内的软件包进行的基本安装将占用小于 800MB 的存储空间。由于安装过程中需要从远程存储库获取软件包,机器将需要一个有效的互联网连接。
Contents
安装前的准备
验证签名
一般建议先验证所下载文件的签名,特别是从 HTTP 镜像源 下载的文件,因为通常会受到恶意镜像的拦截。 [1]
在一台已经安装 GnuPG 的系统上,通过下载 PGP 签名 (under Checksums) 到 ISO 文件所在的路径,可以通过以下方式验证:
$ gpg --keyserver pgp.mit.edu --keyserver-options auto-key-retrieve --verify archlinux-version-x86_64.iso.sig
另外,在一台已经安装 Arch Linux 的计算机上可以通过以下方式验证:
$ pacman-key -v archlinux-version-x86_64.iso.sig
启动到 live 环境
live 环境可以从 USB 安装 U 盘、光盘 或带有 PXE 的网络启动进入。其他安装方法请参考Category:Installation process (简体中文).
- 选择从带有 Arch 安装文件的媒介启动通常是在电脑开机自检的时候按下某个按键,一般会在启动画面有提示。具体参考你主板的手册。
- 当 Arch 菜单出现时,选择 Boot Arch Linux 并按
Enter
进入安装环境。 - 参阅 README.bootparams 获取一系列的 启动参数,参阅 packages.x86_64 获取已经被包含的包。
- 你将会以 root 身份登录进一个虚拟控制台,默认的 SHELL 是 Zsh。
如果想一边安装,一边使用 ELinks 查看本指南,可以使用 Alt+箭头
快捷键切换不同的控制台,编辑配置文件,可以使用nano、vi 或 vim。
键盘布局
控制台键盘布局 默认为 us
(美式键盘映射)。列出所有可用的键盘布局,可以使用:
# ls /usr/share/kbd/keymaps/**/*.map.gz
如果您想要更改键盘布局,可以将一致的文件名添加进 loadkeys(1),但请省略路径和扩展名。比如,要添加 German 键盘布局:
# loadkeys de-latin1
Console fonts 位于 /usr/share/kbd/consolefonts/
,设置方式请参考 setfont(8)。
根据 Getting and installing Arch 中所述,下载并引导安装介质。启动完成后将会自动以 root 身份登录虚拟控制台并进入 Zsh 命令提示符。
验证启动模式
如果以在 UEFI 主板上启用 UEFI 模式,Archiso 将会使用 systemd-boot 来 启动 Arch Linux。可以列出 efivars 目录以验证启动模式:
# ls /sys/firmware/efi/efivars
如果目录不存在,系统可能以 BIOS 或 CSM 模式启动,详见您的主板手册。
连接到因特网
守护进程 dhcpcd 已被默认启用来探测 有线网络设备,并会尝试连接。可以使用 ping 验证连接是否正常:
# ping archlinux.org
如果没有可用网络连接,利用 systemctl stop dhcpcd@网络接口
,TAB
停用 dhcpcd 进程,网络接口
名可以通过 Tab补全。要配置网络,详见 网络配置。
更新系统时间
使用 timedatectl(1) 确保系统时间是准确的:
# timedatectl set-ntp true
可以使用 timedatectl status
检查服务状态。
建立硬盘分区
磁盘若被系统识别到,就会被分配为一个 块设备,如 /dev/sda
或者 /dev/nvme0n1
。可以使用 lsblk 或者 fdisk 查看:
# fdisk -l
结果中以 rom
,loop
或者 airoot
结束的可以被忽略。
对于一个选定的设备,以下的分区是必须要有的:
如果需要创建多级存储例如 LVM、disk encryption 或 RAID,请在此时完成。
分区例子
BIOS with MBR or GPT | ||||
---|---|---|---|---|
挂载点 | 分区 | 分区类型 | 建议大小 | |
None | /dev/sdX1 | BIOS boot partition | 1 MiB | |
/
|
/dev/sdX2 | Linux | 剩余所有空间 | |
[SWAP] | /dev/sdX3 | Linux swap | 大于 512 MiB | |
UEFI with GPT | ||||
挂载点 | 分区 | 分区类型 (GUID) | 建议大小 | |
/boot or /efi
|
/dev/sdX1 | EFI system partition | 260–512 MiB | |
/
|
/dev/sdX2 | Linux | 剩余所有空间 | |
[SWAP] | /dev/sdX3 | Linux swap | 大于 512 MiB |
格式化分区
当分区建立好了,这些分区都需要使用适当的 文件系统 进行格式化。举个例子,如果想将 /dev/sdX2
格式化成 ext4
,可以运行:
# mkfs.ext4 /dev/sdX2
如果您创建了交换分区(例如 /dev/sda3
),使用 mkswap 将其初始化:
# mkswap /dev/sdX3 # swapon /dev/sdX3
详情参见 文件系统。
挂载分区
首先将根分区 挂载 到 /mnt
,例如:
# mount /dev/sdX2 /mnt
如果使用多个分区,还需要为其他分区创建目录并挂载它们(/mnt/boot
、/mnt/home
等等)。
# mkdir /mnt/boot # mount /dev/sdX1 /mnt/boot
接下来 genfstab 将会自动检测挂载的文件系统和 swap 分区。
安装
选择镜像
文件 /etc/pacman.d/mirrorlist
定义了软件包会从哪个 镜像源 下载。在 LiveCD 启动的系统上,所有的镜像都被启用,并且在镜像被制作时,我们已经通过他们的同步情况和速度排序。
在列表中越前的镜像在下载软件包时有越高的优先权。你可以相应的修改文件 /etc/pacman.d/mirrorlist
,并将地理位置最近的镜像源挪到文件的头部,同时你也应该考虑一些其他标准。
这个文件接下来还会被 pacstrap 拷贝到新系统里,所以请确保设置正确。
安装基本系统
# pacstrap /mnt base
这个组并没有包含全部 live 环境中的程序,有些需要额外安装,例如 btrfs-progs。packages.x86_64 页面包含了它们的差异。
如果你还想安装其他软件包组比如 base-devel,请将他们的名字添加到 pacstrap 后,并用空格隔开。你也可以在 #Chroot 之后使用 pacman 手动安装软件包或组。
配置系统
Fstab
用以下命令生成 fstab 文件 (用 -U
或 -L
选项设置UUID 或卷标):
# genfstab -U /mnt >> /mnt/etc/fstab
强烈建议 在执行完以上命令后,后检查一下生成的 /mnt/etc/fstab
文件是否正确。
Chroot
Change root 到新安装的系统:
# arch-chroot /mnt
时区
设置 时区:
# ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
例如:
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
运行 hwclock(8) 以生成 /etc/adjtime
:
# hwclock --systohc
这个命令假定硬件时间已经被设置为 UTC时间。详细信息请查看 System time#Time standard。
本地化
本地化的程序与库若要本地化文本,都依赖 Locale,后者明确规定地域、货币、时区日期的格式、字符排列方式和其他本地化标准等等。在下面两个文件设置:locale.gen
与 locale.conf
。
/etc/locale.gen
是一个仅包含注释文档的文本文件。指定您需要的本地化类型,只需移除对应行前面的注释符号(#
)即可,建议选择带 UTF-8
的项:
# nano /etc/locale.gen
en_US.UTF-8 UTF-8 zh_CN.UTF-8 UTF-8 zh_TW.UTF-8 UTF-8
接着执行 locale-gen
以生成 locale 讯息:
# locale-gen
/etc/locale.gen
会生成指定的本地化文件。
创建 locale.conf
并编辑 LANG
这一 变量,比如:
en_US.UTF-8
,系统的 Log 就会用英文显示,这样更容易问题的判断和处理。用户可以设置自己的 locale,详情参阅 Locale 或 Locale_(简体中文)#设置 locale。/etc/locale.conf
LANG=en_US.UTF-8
另外,如果你需要修改 #键盘布局,并想让这个设置持续生效,编辑 vconsole.conf(5),例如:
/etc/vconsole.conf
KEYMAP=de-latin1
网络
创建 hostname 文件:
/etc/hostname
myhostname
添加对应的信息到 hosts(5):
/etc/hosts
127.0.0.1 localhost ::1 localhost 127.0.1.1 myhostname.localdomain myhostname
如果系统有一个永久的 IP 地址,请使用这个永久的 IP 地址而不是 127.0.1.1
。
对新安装的系统,需要再次设置网络。具体请参考 Network configuration (简体中文)。
Initramfs
你通常不需要创建 initramfs,因为在你执行 pacstrap 时已经安装 linux,这时 mkinitcpio 会被自动运行。
对于 LVM、 system encryption 或 RAID,修改 mkinitcpio.conf 并用以下命令重新创建一个 Initramfs:
# mkinitcpio -p linux
Root 密码
设置 Root 密码:
# passwd
安装引导程序
你需要安装 Linux 引导程序以在安装后启动系统,你可以使用的的引导程序在 启动加载器 中,请选择一个并且安装并配置它,比如 GRUB。
重启
输入 exit
或按 Ctrl+D
退出 chroot 环境。
可选用 umount -R /mnt
手动卸载被挂载的分区:这有助于发现任何「繁忙」的分区,并通过 fuser(1) 查找原因。
最后,通过执行 reboot
重启系统,systemd 将自动卸载仍然挂载的任何分区。不要忘记移除安装介质,然后使用 root 帐户登录到新系统。
安装后的工作
系统管理引导,图形用户界面的安装、声音管理、触摸板支持等后期工作参见 General recommendations (简体中文)。
感兴趣的各类程序,请参见 List of applications (简体中文)。