Arch Linux 简明安装指南
0x00 为什么要装Arch Linux,我寻思都差不多呢?⌗
好问题,我也很难回答完美,毕竟发行版再多,基本都是Linux内核 + GNU coreutils + 发行版自己喜欢的软件包组合。如果你觉得差不多,那是因为对你来说其实真的都差不多!
但是Arch Linux在软件包组合这部分确实有一些特色,比如软件包种类极为丰富的AUR(Arch User Repository),基本可以让你告别手动下载bin包+PATH,或者不得不手动编译的情景,因为热心的Arch Linux用户已经帮你写好了对应的PKGBUILD
,你只需要yay -S <想要的软件包>
,就可以享受pacman -Syu
+yay -Syu
一键升级所有软件包的快乐(只要对应的AUR源维护者还在更新你用的包)。
除此之外,Arch Linux官方软件仓库也是较为包容的,不像部分发行版的软件源维护者对开源有精神洁癖,你只需要pacman -S nvidia cuda cudnn
就可以安装最新英伟达闭源驱动,轻松开始你的炼丹第一步。
0x01 开装⌗
Arch Linux的自由从安装的第一步开始,假设你已经成功引导了Arch Linux的安装镜像,进入了archiso,你需要做的只是运行archinstall
,这会启动一套类似于其它发行版的安装指引,并为你自动安装Arch Linux到磁盘,一点也不复杂。
0x0101 推荐选项⌗
Archinstall language -> Archinstall界面语言⌗
请保持默认的English,因为目前为你显示终端画面的fbdev
并不支持显示中文。
Mirrors -> 镜像源区域⌗
建议选择China,archinstall会自动为你配置包含中国大陆境内几乎所有可用的镜像源。
Disk configuration -> 磁盘配置⌗
在这里配置你想将Arch Linux安装到哪块磁盘,注意archinstall并不会为你智能创建单硬盘双系统的配置,如果你不知道如何手动分区,可以先学习parted
的使用方法,这里假设你要为一块单独的硬盘安装Arch Linux:
- 首先选择你要安装的磁盘,可以根据名称分辨,如果实在分不出来你可以把不想装系统的盘拔了再进archiso
- 选择分区方式,如果你不喜欢手动分区,请在这里选择
best-effort default partition layout
,这会为你自动创建合理的文件布局。 - 选择你要使用的文件系统,这里我们建议使用
btrfs
,作为单系统盘的文件系统,它还是比较稳定的,而且可以享受很多高级特性,之后的选项直接选default就可以。 - 如果你一定要选其它文件系统,则有一点需要注意:如果被提示是否选择为/home创建单独的分区,建议选否,因为自动分区会仅给
/
留下不到20G的可用空间,而且后期重新调整分区布局也会比较麻烦。
bootloader -> 引导程序⌗
建议选择grub
,因为如果出问题的话文档比较多,而且为英伟达闭源驱动启用高分辨率framebuffer必须使用grub
或rEFInd
。
Root Password / User Account -> Root密码/用户账户⌗
推荐只配置User Account,因为不为root账户配置密码更为安全,选择User Account
后,按提示输入用户名密码即可。
Profile -> 配置方案⌗
选择Desktop
类型,桌面环境建议选择Kde
。对于英伟达显卡,如无明确需求,则选择proprietary
驱动。
Audio -> 音频驱动⌗
听说Pipewire
比Pulseaudio
更稳定更先进,你看着选吧。
Additional Packages -> 额外软件包⌗
如果你想在重启后拥有开箱即用的体验,那么这里需要多写一点点东西,我的推荐软件包列表如下:
firefox os-prober ttf-sarasa-gothic fcitx5-im noto-fonts-emoji
Network configuration -> 网络配置⌗
推荐选择Network Manager,因为可以直接和KDE的设置界面集成。
Timezone -> 时区⌗
显然选择Asia/Shanghai,你可以输入/Shanghai
快速搜索到时区。
0x0102 重启之前⌗
在安装流程完成后,archinstall会问你需不需要进入chroot环境对系统进行配置,我的建议是进入,毕竟后面这些工作你迟早都要做。
配置英伟达驱动内核参数⌗
- 编辑
/etc/default/grub
文件,找到GRUB_CMDLINE_LINUX_DEFAULT
,看到类似"loglevel=3 quiet"
的值,在后面添加参数,修改为类似"loglevel=3 quiet nvidia-drm.modeset=1"
- 运行
sudo grub-mkconfig -o /boot/grub/grub.cfg
,生成新的grub配置,这句命令等同sudo update-grub
,但是Arch Linux默认不带这个命令。
如果不添加该项,则可能默认使用
Zink
驱动,并有可能因此导致登录进入桌面后黑屏。
启用os-prober⌗
如果你要双盘双系统,那么使用grub搭配os-prober自动发现系统是一个好的选择。
- 编辑
/etc/default/grub
文件,找到GRUB_DISABLE_OS_PROBER
,取消前面的注释,设置为GRUB_DISABLE_OS_PROBER=false
,以启用os-prober
由于在chroot环境下os-prober
无法正常工作,建议在重启进入系统后再次运行sudo grub-mkconfig -o /boot/grub/grub.cfg
生成配置。
恢复系统emoji显示⌗
为了让系统正常显示emoji,我们需要
- 编辑
/etc/fonts/local.conf
文件,写入:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Sarasa Gothic SC</family>
<family>Noto Sans</family>
<family>Noto Color Emoji</family>
<family>Noto Emoji</family>
<family>DejaVu Sans</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Sarasa Term Slab SC</family>
<family>Noto Serif</family>
<family>Noto Color Emoji</family>
<family>Noto Emoji</family>
<family>DejaVu Serif</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Sarasa Mono SC</family>
<family>Noto Mono</family>
<family>Noto Color Emoji</family>
<family>Noto Emoji</family>
<family>DejaVu Sans Mono</family>
</prefer>
</alias>
<!-- Simplified Chinese -->
<match target="pattern">
<test name="lang" compare="contains">
<string>zh-cn</string> <!-- Simplified Chinese -->
</test>
<edit name="family" mode="prepend" binding="strong">
<string>Sarasa Gothic SC</string>
</edit>
</match>
<!-- Traditional Chinese -->
<match target="pattern">
<test name="lang" compare="contains">
<string>zh-tw</string> <!-- Traditional Chinese -->
</test>
<edit name="family" mode="prepend" binding="strong">
<string>Sarasa Gothic TC</string>
</edit>
</match>
</fontconfig>
- 运行
fc-cache -fv
刷新字体缓存。
这么长的配置确实比较难手写,你可以进入桌面之后再回来配置这段,我为你准备了一个跳转到原文的短链接,方便你在计算机浏览器内打开: https://go.maxng.cc/archfont
安装yay⌗
我们前面吹了很多AUR的好处,但是你得有办法用AUR软件源的东西才行,我推荐使用yay
安装AUR包。
官方仓库链接: https://github.com/Jguer/yay
简单来说,只需要运行:
pacman -S --needed git base-devel && git clone https://aur.archlinux.org/yay-bin.git && cd yay-bin && makepkg -si
需要注意的是,使用yay
命令时不需要也不建议带sudo
。
0x02 重启 && 用⌗
在配置完成后,你可以按Ctrl+D退出chroot
环境,并运行reboot
重启系统了。
如果你遇到了任何问题,我也不知道怎么解决,但我推荐你阅读所有Linux发行版Wiki里最完善的中文Wiki: https://wiki.archlinuxcn.org/wiki/ ,以及活跃的用户社区: https://bbs.archlinuxcn.org/
0x03 常见问题排障经验⌗
SDDM登录界面太丑了⌗
尝试在系统设置
-> 开机与关机
-> 登录屏幕(SDDM)
中选择新的主题
在Wayland下,浏览器与Jetbrains系列产品等应用闪屏/输入框卡顿⌗
尝试创建 ~/.config/environment.d/envvars.conf
文件,写入XWAYLAND_NO_GLAMOR=1
,重启