Arch安装
1 ISO
从 全球镜像站 或 校园网联合镜像站 中找一个合适的镜像站下载 ISO。对于我的网络情况, 以下站点按照下载速度由快到慢排序:
2 Live环境
使用 Ventoy 制作启动 U 盘。
进入 BIOS, 关闭安全启动, 将 U 盘设置为第一位加载。
进入 Live 环境后, 验证引导模式:
|
|
如果命令结果显示了目录且没有报告错误, 则系统以 UEFI 模式引导。
3 连接网络
检查网络接口启用状态:
|
|
对于Wi-Fi, 确保网卡未被 rfkill 禁用。
连接方式:
- 网线: 最方便, 不用额外设置。
- 无线: 参考 iwctl。
- 手机 USB 共享网络: 也不用额外设置, 但是离开 Live 环境后一般就不能共享手机网络了, 也许缺少驱动?
systemd-networkd
、systemd-resolved
、iwd
和 ModemManager
。但已经安装好了的系统并非如此。所以在后面的 安装必要包 步骤中记得安装网络工具, 不然重启后进入系统无法联网。
测试网络:
|
|
4 TTY字体
自带的字体实在是没法看, 安装 terminus-font
字体:
|
|
查看适用于 TTY 的字体:
|
|
临时设置一个字体:
|
|
或者编辑 /etc/vconsole.conf
, 设置默认字体:
|
|
关于 terminus-font
字体名称中的 g*
、*n
之类的参数, 请阅读 /usr/share/kbd/consolefonts/README.Lat2-Terminus16
。
5 检查时间
|
|
6 硬盘分区
6.1 双系统的EFI分区
双系统的 EFI 分区是个麻烦, 缘由有两个:
- Windows 的 EFI 分区太小了, 区区 100M 根本不满足 Windows 和 Arch 两个系统使用, 将直接导致安装 Arch 失败。
- 一块硬盘上只能有一个 EFI 分区。
不能一味地遵循 Arch WiKi 和各路文档的做法, 直接挂载已有的 EFI 分区, 那只适用于只有一块硬盘且已有的 EFI 分区足够大的情况。
6.1.1 一块硬盘
如果只有一块硬盘, 而且已经安装了 Windows, 那么就要为 Windows 的 EFI 分区扩容, 但是扩容 EFI 分区也挺麻烦, 说不定还会出问题, 建议直接重装:
- 提前将 Windows 数据备份。
- 在安装 Arch 的 Live 环境中使用
cfdisk /dev/设备号
命令对目标硬盘分区, 先将整个硬盘格式化, 再创建一个大的 EFI 分区。 - 退出 Live 环境。
- 先安装 Windows, Windows 会自动使用已有 EFI 分区。
- 再安装 Arch, 安装 Arch 时手动挂载 EFI 分区。
6.1.2 两块硬盘
如果有两块硬盘, 那么最佳实践是将两个系统分别安装在两块不同的硬盘中, 各自使用自己的 EFI 分区。
要想双启动, 就将 Windows 的启动文件复制到 Arch 的 EFI 分区中, 在 BIOS 中将 GRUB 调整为第一位加载, 每次开机就可以选择启动 Arch 还是 Windows 了。
毕竟都有两块硬盘了, 如果已有的 EFI 分区不够用, 还要再按照一块硬盘的处理方式, 扩容 EFI 分区? 或者先重装 Windows 再装 Arch? 那真是不嫌麻烦。
两个系统安装在两块硬盘上, Arch 如果还要去使用另一块硬盘上的 EFI 分区, 以后万一那块硬盘故障了、重装系统了(造成 Arch 启动文件丢失), 后果就是两个系统都打不开。
6.2 创建分区
使用 lsblk -f
或 fdisk -l
查看所有硬盘设备。
使用 cfdisk /dev/设备号
命令对目标硬盘分区。
比如我有两块硬盘, /dev/sda/
上已经安装了 Windows, 那就让 Arch 使用 /dev/sdb/
。输入 cfdisk /dev/sdb/
对 sdb
进行分区。
EFI 分区建议分配 1G, 因为说不定后续有安装多内核的需求、同硬盘安装其他 Linux 的需求, 反正现在的硬盘容量都很大, 不差这点。
假设先创建了 1G 的 EFI 分区, 为 /dev/sdb1
; 又创建了 50G 的 Linux 文件系统分区(根分区), 为 /dev/sdb2
; 最后创建了 SWAP 分区, 为 /dev/sdb3
。
6.3 格式化分区
格式化根分区:
|
|
初始化交换空间:
|
|
格式化 EFI 分区:
|
|
这是我完成分区和格式化操作后的fdisk -l
输出:
|
|
6.4 挂载分区
先挂载根分区:
|
|
再挂载引导分区:
|
|
这时可以挂载 Windows 的 EFI 分区, 以便之后使用 os-prober
探测系统:
|
|
挂载交换空间:
|
|
7 安装必要包
7.1 选择镜像
使用 reflector
筛选镜像源保存到文件中:
|
|
或者使用校园网联合镜像站的测速 脚本 测试一下, 结合校园网联合镜像站 列表, 手动编辑 /etc/pacman.d/mirrorlist
, 比如:
|
|
禁用 reflector.service
:
|
|
7.2 安装
|
|
微码: AMD 处理器安装 amd-ucode
, Intel 处理器安装 intel-ucode
。
网络工具: 只安装 networkmanager
即可。如果安装 iwd
, 由于它与 networkmanager
冲突, 最后不免要手动关闭它。
8 配置系统
8.1 Fstab
生成 fstab
文件:
|
|
检查生成的 /mnt/etc/fstab
文件是否正确:
|
|
8.2 Chroot
chroot 到新安装的系统:
|
|
8.3 网络配置
8.3.1 自定义主机名称
|
|
8.3.2 连接网络
这一步只有 Wi-Fi才需要配置; 如果插着网线, 那网络是一直连通的; 如果使用手机 USB 共享网络, 到了这一步, 网络能连通还好, 不连通的话也不好折腾。
如果 之前 安装的是 networkmanager
, 那么参考 NetworkManager#nmcli examples 来使用 Wi-Fi。
8.4 设置时间
8.4.1 设置时区
|
|
生成 /etc/adjtime
:
|
|
查看当前硬件时钟的时间标准:
|
|
输出:
|
|
将硬件时间设置为 localtime:
|
|
为什么使用 localtime 而不是 UTC, 参考 双系统时间不一致。
8.4.2 同步时间
可以参考 Systemd-timesyncd, vim /etc/systemd/timesyncd.conf
, 自定义 NTP 服务器, 比如:
|
|
启用时间同步:
|
|
检查服务状态:
|
|
检查配置:
|
|
检查同步状态:
|
|
8.5 本地化
vim /etc/locale.gen
写入以下内容:
|
|
生成 locale 信息:
|
|
vim /etc/locale.conf
写入以下内容:
|
|
使用 locale
命令查看区域信息。
目前先使用 英文 locale, 等重启进入桌面之后再设置为中文 locale。虽然直接使用中文 locale 会导致 TTY 上中文显示为方块, 但是又不经常使用 TTY; 非要使用 TTY 的时候, 再手动设置英文 locale 就好了。
当然最好的办法是永远只使用英文 locale。
8.6 设置Root密码
|
|
8.7 GRUB
8.7.1 安装
参考 GRUB 安装:
|
|
8.7.2 生成主配置文件
为防止得到如下报错:
|
|
vim /etc/default/grub
, 取消这一行的注释, 如果没有这一行, 就在文件末尾加上:
|
|
运行 os-prober
探测其他系统:
|
|
生成主配置文件:
|
|
每次安装或者移除一个内核后, 都需要重新运行一次 grub-mkconfig
命令。
若要管理多个 GRUB 条目, 比如既使用 linux
又使用 linux-lts
内核, 参考 GRUB/Tips and tricks#Multiple entries。
9 普通用户
9.1 创建
|
|
更改普通账户的密码:
|
|
9.2 加入sudoers
vim /etc/sudoers
, 在 root ALL=(ALL:ALL) ALL
下添加一行, 比如:
|
|
10 其他仓库
10.1 启用32位支持库
编辑 /etc/pacman.conf
, 取消以下两行的注释:
|
|
10.2 添加中文社区库
此处只能添加一个 Server, 参考 archlinuxcn/mirrorlist-repo, 选择一个镜像站, 虽然它列举的镜像站不全, 但大部分 arch 镜像站也同时托管 archlinuxcn, 可以自己检查一下。
编辑 /etc/pacman.conf
, 添加:
|
|
安装 archlinuxcn-keyring
包导入 GPG key:
|
|
11 安装桌面
更新系统:
|
|
安装 Xorg、SDDM、KDE Plasma:
|
|
xorg 和 plasma 都是包组, 包组里的软件包大部分都有用, 全部安装即可。
12 安装软件
安装常用的 KDE 系列软件:
|
|
包名 | 简介 |
---|---|
ark | 压缩软件 |
dolphin | 文件管理器 |
dolphin-plugins | 集成其他服务 |
elisa | 音乐播放器 |
gwenview | 图像查看器 |
kcalc | 计算器 |
kcolorchooser | 调色板、取色器 |
kdeconnect | 局域网连接设备、传输文件 |
kdf | 磁盘占用查看器 |
kmail | 电子邮件 |
konsole | 终端 |
partitionmanager | 分区管理器 |
spectacle | 截图工具 |
安装 yay:
|
|
安装其他软件:
|
|
包名 | 简介 |
---|---|
7-zip-full | 代替 p7zip 作为 ark 的依赖使其支持 7z |
aria2 | 下载器 |
clash-for-windows-bin | 代理软件 |
git | 版本控制 |
google-chrome | 浏览器 |
inkscape | 矢量图编辑器 |
joplin-desktop | 笔记软件 |
kclock | 多时钟、计时器、秒表和闹钟 |
ntfs-3g | 挂载 NTFS 硬盘 |
telegram-desktop | 聊天软件 |
unrar | 作为 ark 的依赖使其支持 RAR |
visual-studio-code-bin | 文本编辑器 |
vlc | 音视频播放器 |
wps-office | 办公软件 |
wps-office-mui-zh-cn | WPS 中文语言包 |
ttf-wps-fonts | WPS 符号字体 |
输入法等重启进入桌面后再配置, 参考 Rime配置。
13 显卡
等重启进入桌面后再配置, 参考 Arch与Intel核显。
14 音频
等重启进入桌面后再配置, 参考 Arch配置/#音频。
15 蓝牙
等重启进入桌面后再配置, 参考 Arch配置/#蓝牙。
16 重启
到这里, 绝大部分配置都已完成, 剩余的工作等重启以后再处理。
手动卸载被挂载的分区:
1
umount -R /mnt
有助于发现任何“繁忙”的分区, 并通过 fuser 查找原因。
输入
exit
或按Ctrl+D
退出chroot
环境。输入
reboot
重启系统, systemd 将自动卸载仍然挂载的任何分区。不要忘记移除安装介质, 然后使用 root 帐户登录到新系统。
17 后续工作
参考 Arch配置。