自从 Fedora Core 之后这十来年一直用的都是比较主流的版本(Ubuntu/CentOS),也曾非常非常短暂的尝试过 openSUSE、Deepin Linux、Linux Mint 之类的,偶尔会在网上看到把 Arch Linux 说的神乎其神的文章,今年五一假期突然想到要尝试一下,后面就陆续把家里的电脑和公司电脑都换成了 Arch(家里暂时还是和 Ubuntu 共存的,只是用 gparted 把 Ubuntu 的空间压缩了很多),甚至把腾讯云主机上的系统也换成了 Arch,目前用下来感觉还不错,当然个人感觉相比 Ubuntu/CentOS 也绝对没有什么神奇的地方,看上去比 Ubuntu 资源占用可能小一点点吧(CentOS 只在公司服务器上用,很少用图形界面,资源占用应该更小),不过家里和公司的电脑配置都已经足够高了,这点点占用好像也无所谓。
其实,我喜欢的是它紧跟上游,软件足够新 :)
网上关于 Arch Linux 安装的文章已经是汗牛充栋了,这里只是简单记录一下我的安装过程,系统安装部分仅适用于使用 Arch Linux ISO 做的启动优盘安装的场景,后面的软件安装倒是通用的,总的来说安装过程是要比 Ubuntu/CentOS 的字符安装界面更折腾一点。
系统安装
创建分区
将剩下的硬盘空间创建为一个新的根分区,由于已经存在 UEFI 的 ESP 分区了,因此不需要再创建,只需要一个根分区即可(已经 2023 年了,不考虑非 UEFI 这种引导方式):
$ sudo parted /dev/nvme0n1
(parted) p
Model: WD_BLACK SN750 2TB (nvme)
Disk /dev/nvme0n1: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 839GB 839GB ext4
3 839GB 1678GB 839GB ext4
(parted) mkpart arch 1678G 100%
(parted) p
Model: WD_BLACK SN750 2TB (nvme)
Disk /dev/nvme0n1: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 839GB 839GB ext4
3 839GB 1678GB 839GB ext4
4 1678GB 2000GB 322GB arch
如果原硬盘上没有 ESP 分区(如新硬盘,或者基于 Arch ISO 启动光盘或优盘之类进行全新安装),则需要新建 ESP 分区,且创建分区之后要设置 ESP 分区标记:
(parted) toggle 4 esp
(parted) p
4 1678GB 2000GB 322GB arch boot, esp
(parted) toggle 4
Flag to Invert? esp
(parted) p
4 1678GB 2000GB 322GB arch
格式化根分区:
$ sudo mkfs.ext4 /dev/nvme0n1p4
如果创建了新的 ESP 分区,则同样格式化 ESP 分区:
$ sudo mkfs.fat -F 32 /dev/nvme0n1p4
挂载根文件系统
$ sudo mount /dev/nvme0n1p4 /mnt/
$ sudo mount --mkdir /dev/nvme0n1p1 /mnt/boot
配置 pacman 软件源
$ sudo vi /etc/pacman.d/mirrorlist
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch
安装基础系统
$ sudo pacstrap -K /mnt base linux linux-firmware base-devel vim
更新 fstab
$ sudo genfstab -U /mnt >> /mnt/etc/fstab
chroot
$ sudo arch-chroot /mnt
基础配置
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# hwclock --systohc
# vim /etc/locale.gen
en_US.UTF-8 UTF-8
zh_CN.UTF-8 UTF-8
# locale-gen
# vi /etc/locale.conf
LANG=en_US.UTF-8
# passwd
安装 grub
# pacman -S efibootmgr grub os-prober
# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch
# ls /boot/
EFI initramfs-linux-fallback.img 'System Volume Information'
grub initramfs-linux.img vmlinuz-linux
# ls /boot/EFI/
arch BOOT Dell ubuntu
# vim /etc/default/grub
GRUB_DISABLE_OS_PROBER=false
需要 mount 其它 Linux 分区 os-prober 才能找的到:
# mkdir /ubuntu
# mount /dev/nvme0n1p3 /ubuntu/
# grub-mkconfig -o /boot/grub/grub.cfg
根据需要可以通过 efibootmgr
调整 UEFI 的上电顺序,也可以直接在系统上电时的 BIOS 界面进行调整。
# reboot
系统配置
sudo
# useradd -m runsisi
# passwd runsisi
# pacman -S sudo
# EDITOR=vim visudo /etc/sudoers.d/runsisi
runsisi ALL=(ALL:ALL) NOPASSWD: ALL
yay
$ sudo pacman -S go
$ git clone git@github.com:Jguer/yay.git
$ cd yay/
$ export GOPROXY=https://goproxy.cn,direct
$ make PREFIX=/usr
$ sudo make PREFIX=/usr install
桌面环境
kde
$ sudo pacman -S sddm
$ sudo pacman -S plasma-meta konsole
gnome
$ sudo pacman -S gdm
$ sudo pacman -S gnome-shell gnome-control-center gnome-tweaks gnome-terminal
$ yay -S gnome-browser-connector
$ sudo pacman -S gnome-menus
$ sudo pacman -S gnome-shell-extension-appindicator
应用程序
network
$ sudo pacman -S networkmanager
font
$ sudo pacman -S wqy-microhei
输入法
$ sudo pacman -S fcitx5 fcitx5-rime fcitx5-configtool
$ sudo pacman -S fcitx5-gtk fcitx5-qt
$ sudo pacman -S rime-emoji noto-fonts-emoji
$ sudo vi /etc/environment
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
$ fcitx5-remote -r
$ git clone git@github.com:iDvel/rime-ice.git
$ ln -sr rime-ice/ ~/.local/share/fcitx5/rime
$ fcitx5-remote -r
$ sudo pacman -S okular
photo
$ sudo pacman -S deepin-image-viewer
numlock
$ dconf-editor
Activating numlock on bootup
https://wiki.archlinux.org/title/Activating_numlock_on_bootup
系统信息
❯ neofetch
-` runsisi@arch
.o+` ------------
`ooo/ OS: Arch Linux x86_64
`+oooo: Host: 82N6 Lenovo Legion R9000K2021H
`+oooooo: Kernel: 6.4.1-arch2-1
-+oooooo+: Uptime: 12 mins
`/:-:++oooo+: Packages: 1215 (pacman)
`/++++/+++++++: Shell: zsh 5.9
`/++++++++++++++: Resolution: 3408x2130
`/+++ooooooooooooo/` DE: GNOME 44.3
./ooosssso++osssssso+` WM: Mutter
.oossssso-````/ossssss+` WM Theme: WhiteSur-Light
-osssssso. :ssssssso. Theme: WhiteSur-Light [GTK2/3]
:osssssss/ osssso+++. Icons: WhiteSur [GTK2/3]
/ossssssss/ +ssssooo/- Terminal: konsole
`/ossssso+/:- -:/+osssso+- Terminal Font: MesloLGS NF 12
`+sso+:-` `.-/+oso: CPU: AMD Ryzen 9 5900HX with Radeon Graphics (16) @ 3.300GHz
`++:. `-/+/ GPU: NVIDIA GeForce RTX 3080 Mobile / Max-Q 8GB/16GB
.` `/ GPU: AMD ATI Radeon Vega Series / Radeon Vega Mobile Series
Memory: 2688MiB / 27918MiB
参考资料
Installation guide
https://wiki.archlinux.org/title/Installation_guide
GRUB
https://wiki.archlinux.org/title/GRUB
最后修改于 2023-06-22