Arch Linux 安装
简单记录一下 ArchLinux 的安装过程,安装稍微比 Ubuntu/CentOS 等发行版麻烦一点点。

自从 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

pdf

$ 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