Arch Linux安装教程 (以Legacy BIOS为例) 最后更新于2022年7月4日

1.Arch Linux & KDE 的安装及配置——

零、系统镜像的下载 & 安装介质的制作 & BIOS 的设置

点击此处下载系统镜像校验镜像的完整性。校验无误后,使用Ventoy制作安装介质。(如果是首次使用Ventoy,请点击此处查看使用方法)然后进入BIOS,将安全启动和快速启动关闭并将安装介质(如U盘)设置为第一启动项,并按F10保存退出。进入ArchLinux安装盘即可。

如有疑问请参考Wiki以下章节:

获取安装映像#%E8%8E%B7%E5%8F%96%E5%AE%89%E8%A3%85%E6%98%A0%E5%83%8F)

准备安装映像#%E5%87%86%E5%A4%87%E5%AE%89%E8%A3%85%E6%98%A0%E5%83%8F)

启动到Live环境#%E5%90%AF%E5%8A%A8%E5%88%B0Live%E7%8E%AF%E5%A2%83)

一、验证引导模式 & 联网 & 换源:

  1. $ ls /sys/firmware/efi/efivars
  2. #验证引导模式(如果目录不存在,即为Legacy BIOS引导模式;反之,请使用隔壁以UEFI为例的教程)
  3. $ iwctl
  4. #运行iwctl(如果是台式机,可直接跳到"ping archlinux.org"这一步)
  5. [iwctl]# device list
  6. #列出WiFi设备(一般为wlan0;这里以wlan0为例)
  7. [iwctl]# station wlan0 scan
  8. #扫描网络
  9. [iwctl]# station wlan0 get-networks
  10. #列出可用网络
  11. [iwctl]# station wlan0 connect X
  12. #连接到X(X改成你可用的WiFi名称并在回车后输入密码且确保密码输入正确)
  13. [iwctl]# exit
  14. #退出iwctl
  15. $ ping archlinux.org
  16. #检查网络连接(如果不停的有输出内容,即为联网成功;按Ctrl+C终止输出)
  17. $ reflector --country China --save /etc/pacman.d/mirrorlist
  18. #换源(注意大小写)
  19. $ systemctl stop reflector
  20. #关闭reflector服务
  21. $ vim /etc/pacman.d/mirrorlist
  22. #编辑/etc/pacman.d/mirrorlist文件,保留自己需要的源(一般推荐使用中科大源或清华源)
  23. $ timedatectl set-ntp true
  24. #同步时间
  25. $ timedatectl status
  26. #检查服务状态

如有疑问请参考Wiki以下章节:

验证引导模式#%E9%AA%8C%E8%AF%81%E5%BC%95%E5%AF%BC%E6%A8%A1%E5%BC%8F)

连接到因特网#%E8%BF%9E%E6%8E%A5%E5%88%B0%E5%9B%A0%E7%89%B9%E7%BD%91)

选择镜像#%E9%80%89%E6%8B%A9%E9%95%9C%E5%83%8F)和reflector#%E7%A4%BA%E4%BE%8B)

更新系统时间#%E6%9B%B4%E6%96%B0%E7%B3%BB%E7%BB%9F%E6%97%B6%E9%97%B4)

二、分区 & 挂载:

以下分区和挂载相关步骤是以SATA协议硬盘为例。

$ lsblk
#查看硬盘名称(一般为sda;其中rom,loop或airoot可以忽略;这里以sda为例)

$ fdisk /dev/sda
#使用fdisk对sda进行相关操作
#步骤如下:
Command (m for help): o #输入o新建MBR分区表
Command (m for help): n #输入n创建新分区
Select (default p): p #这里按Enter键创建主分区(如果想创建逻辑扩展分区请输入e)
Partition number (1-4, default 1): #这里按Enter键
First sector (2048-X, default 2048): #这里按Enter键
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-X, default X): +10G #输入+10G
Command (m for help): t #输入t更改分区类型
Hex code or alias (type L to list all): 82 #输入82,创建swap分区
Command (m for help): n #输入n创建新分区,然后一直按Enter键,把剩下的空间全部分配给/分区
Command (m for help): w #输入w写入 

$ lsblk
#查看分区结构是否正确

$ mkfs.xfs /dev/sda2
#将sda2格式化为xfs(个人习惯使用xfs,可根据自己使用情况选择文件系统,如btrfs或ext4等均可)

$ mkswap /dev/sda1
#将sda1设置为swap

$ mount /dev/sda2 /mnt
#将sda2挂载到/mnt目录

$ swapon /dev/sda1
#激活sda1为交换分区

$ lsblk -f
#查看相应分区的文件系统及挂载是否正确

在pacstrap之前,请再检查一下/etc/pacman.d/mirrorlist文件。例如:cat /etc/pacman.d/mirrorlist或vim /etc/pacman.d/mirrorlist。总之,检查一下这个文件即可。

如有疑问请参考Wiki以下章节:

建立硬盘分区#%E5%BB%BA%E7%AB%8B%E7%A1%AC%E7%9B%98%E5%88%86%E5%8C%BA)

格式化分区#%E6%A0%BC%E5%BC%8F%E5%8C%96%E5%88%86%E5%8C%BA)

挂载分区#%E6%8C%82%E8%BD%BD%E5%88%86%E5%8C%BA)

三、安装基本的包 & 初步配置:

$ pacstrap /mnt linux linux-firmware linux-headers base base-devel vim bash-completion networkmanager
#安装linux & linux-firmware & linux-headers & base & base-devel & vim & bash-completion & networkmanager(如果使用的是btrfs文件系统,则还需要安装btrfs-progs)

$ genfstab -U /mnt > /mnt/etc/fstab
#生成/mnt/etc/fstab文件(注意大小写)

$ cat /mnt/etc/fstab
#查看/mnt/etc/fstab文件是否正确(如果不正确,请重新分区、挂载、pacstrap)

$ arch-chroot /mnt
#进入目标系统

$ pacman -S grub amd-ucode intel-ucode
#安装grub & amd-ucode或intel-ucode(AMD的CPU安装amd-ucode,intel的CPU安装intel-ucode)

$ lsblk
#查看硬盘名称

$ grub-install /dev/sda
#将grub写入sda

$ grub-mkconfig -o /boot/grub/grub.cfg
#生成/boot/grub/grub.cfg文件

$ systemctl enable NetworkManager
#开机自启NetworkManager服务(注意大小写)

$ passwd root
#设置root密码(在回车后输入密码且密码不显示,输入完成后回车,再输入一遍且密码同样不显示,输入完成后再回车,即可完成密码设置)

如有疑问请参考Wiki以下章节:

安装必需的软件包#%E5%AE%89%E8%A3%85%E5%BF%85%E9%9C%80%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85)

Fstab#Fstab)

Chroot#Chroot)

安装引导程序#%E5%AE%89%E8%A3%85%E5%BC%95%E5%AF%BC%E7%A8%8B%E5%BA%8F)

Root密码#Root_%E5%AF%86%E7%A0%81)

四、退出目标系统:

$ exit
#退出目标系统

$ umount -R /mnt
#卸载/mnt目录

$ reboot
#重启并登陆root

五、系统配置:

$ nmtui
#运行nmtui(根据图形界面提示进行联网操作即可;台式机可跳过)

$ ping archlinux.org
#检查网络连接(如果不停的有输出内容,即为联网成功;按Ctrl+C终止输出)

$ vim /etc/hostname
#创建/etc/hostname文件,加入以下内容:
arch
#将主机名设置为arch

$ vim /etc/hosts
#编辑/etc/hosts文件,在末尾加入以下内容:
127.0.0.1 localhost
::1 localhost
127.0.1.1 arch.localdomain arch
#配置hosts文件,映射IP地址和主机名

$ timedatectl set-timezone Asia/Shanghai && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && hwclock --systohc
#设置时区为上海(注意大小写)

$ timedatectl set-ntp true
#同步时间

$ timedatectl status
#检查服务状态

$ vim /etc/environment
#编辑/etc/environment文件,在开头加入以下内容:
export EDITOR=/usr/bin/vim
#设置vim为默认文本编辑器(注意大小写)

$ reboot
#重启并登陆root

$ useradd -m -G wheel arch
#添加普通用户,用户名为arch并将arch添加到wheel组中

$ passwd arch
#设置arch密码(注意事项请参考第三阶段的设置root密码部分)

$ id arch
#查看用户组是否添加到相应的组中

$ visudo
#设置用户权限,删除%wheel ALL=(ALL:ALL) ALL前面的#

$ reboot
#重启并登陆root

$ vim /etc/locale.gen
#编辑/etc/locale.gen文件,删除en_US.UTF-8 UTF-8和zh_CN.UTF-8 UTF-8前面的#

$ locale-gen
#生成语言

$ vim /etc/locale.conf
#创建/etc/locale.conf文件,加入以下内容:
LANG=en_US.UTF-8
#设置语言为en_US.UTF-8,不要设置为zh_CN.UTF-8(注意大小写)

$ reboot
#重启并登陆root

$ vim /etc/pacman.conf
#编辑/etc/pacman.conf文件,删除[multilib]区域的所有#(开启32位支持)并在末尾加入以下内容:
[archlinuxcn]
Server = https://mirrors.ustc.edu.cn/archlinuxcn/$arch
#添加archlinuxcn源(一般推荐使用中科大源;除了可以添加archlinuxcn源外,还可以添加arch4edu源、blackarch源以及各种私人源,后面会提到;注意大小写)

$ pacman -Sy
#同步数据

$ pacman -S archlinuxcn-keyring
#安装archlinuxcn-keyring

$ rm -rf /etc/pacman.d/gnupg && pacman-key --init && pacman-key --populate archlinux && pacman-key --populate archlinuxcn
#生成新的密钥环并重新签署密钥(安装archlinuxcn-keyring不报错时可跳过)

$ pacman -Sy
#再次同步数据

$ pacman -S mesa lib32-mesa xf86-video-amdgpu vulkan-radeon lib32-vulkan-radeon libva-mesa-driver lib32-libva-mesa-driver mesa-vdpau lib32-mesa-vdpau xf86-video-ati
#安装AMD核显相关驱动

$ pacman -S mesa lib32-mesa xf86-video-intel vulkan-intel lib32-vulkan-intel
#安装intel核显相关驱动

$ pacman -S alsa-utils alsa-plugins alsa-oss alsa-firmware sof-firmware alsa-ucm-conf pulseaudio pulseaudio-alsa pulseaudio-bluetooth bluez bluez-utils
#安装声音相关驱动

$ systemctl enable bluetooth
#开机自启bluetooth服务

$ reboot
#重启并登陆root

So,Nvidia:FuckYou!

如有疑问请参考Wiki以下内容:

网络配置#%E7%BD%91%E7%BB%9C%E9%85%8D%E7%BD%AE)

时区#%E6%97%B6%E5%8C%BA)

本地化#%E6%9C%AC%E5%9C%B0%E5%8C%96)

六、安装桌面环境:

$ pacman -S ttf-dejavu ttf-liberation noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-emoji-blob noto-fonts-extra wqy-bitmapfont wqy-microhei wqy-microhei-lite wqy-zenhei ttf-arphic-extra ttf-arphic-ukai ttf-arphic-uming adobe-source-code-pro-fonts adobe-source-han-sans-jp-fonts adobe-source-han-sans-tw-fonts adobe-source-han-serif-jp-fonts adobe-source-han-serif-tw-fonts adobe-source-han-sans-cn-fonts adobe-source-han-sans-kr-fonts adobe-source-han-serif-cn-fonts adobe-source-han-serif-kr-fonts adobe-source-sans-fonts adobe-source-han-sans-hk-fonts adobe-source-han-sans-otc-fonts adobe-source-han-serif-hk-fonts adobe-source-han-serif-otc-fonts adobe-source-serif-fonts
#安装字体(请根据需要自行补充,这里只安装常用的包)

$ pacman -S plasma-meta konsole dolphin kate ark gwenview vlc  firefox
#安装KDE桌面及软件(这里只安装最必要的包,如果想完整使用KDE的各种功能请根据对应提示安装需要的包)

$ systemctl enable sddm
#开机自启sddm服务

$ reboot
#重启

2.桌面中文环境的设置 & 输入法的安装及配置——

一、中文环境的设置:

System Settings(系统设置)>>Regional Settings(区域设置)>>Language(语言)>>Add language(添加语言),找到简体中文后点Add(添加)。添加简体中文后,将其移到最上方,并删除其他多余语言,否则会出现汉化不全的情况。上述操作完成后,点击Apply(应用)。

System Settings(系统设置)>>Regional Settings(区域设置)>>Formats(格式)>>Region(区域),选择简体中文(中国)。上述操作完成后,点击Apply(应用)。

$ reboot
#重启

二、Fcitx 5 输入法的安装:

$ sudo pacman -S fcitx5-im fcitx5-chinese-addons
#安装fcitx5主体、配置工具、输入法引擎及中文输入法模块

$ sudo vim /etc/environment
#编辑/etc/environment文件,在末尾加入以下内容:
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
#配置环境变量(注意大小写)

$ sudo pacman -S fcitx5-pinyin-zhwiki fcitx5-pinyin-moegirl
#安装词库

$ reboot
#重启

3.其他配置——

一、AUR helpers 的安装:

$ sudo pacman -S paru
#安装paru

$ sudo vim /etc/paru.conf
#编辑/etc/paru.conf文件,删除BottomUp前面的#

使用方法请参考paru

二、其他软件源的添加:

$ sudo pacman-key --recv-keys 7931B6D628C8D3BA && sudo pacman-key --finger 7931B6D628C8D3BA && sudo pacman-key --lsign-key 7931B6D628C8D3BA
#导入arch4edu源的GPG key

$ sudo vim /etc/pacman.conf
#编辑/etc/pacman.conf文件,在末尾加入以下内容:
[arch4edu]
Server = https://mirrors.tuna.tsinghua.edu.cn/arch4edu/$arch
#添加arch4edu源
[blackarch]
SigLevel = Never
Server = https://mirrors.ustc.edu.cn/blackarch/$repo/os/$arch
#添加blackarch源(暂时加入SigLevel = Never,否则会报错;注意大小写)

$ sudo pacman -Sy
#同步数据

$ sudo pacman -S arch4edu-keyring blackarch-keyring
#安装arch4edu-keyring & blackarch-keyring

$ sudo rm -rf /etc/pacman.d/gnupg && sudo pacman-key --init && sudo pacman-key --populate archlinux && sudo pacman-key --populate archlinuxcn && sudo pacman-key --populate arch4edu && sudo pacman-key --populate blackarch
#生成新的密钥环并重新签署密钥

$ sudo vim /etc/pacman.conf
#编辑/etc/pacman.conf文件,删除[blackarch]区域的SigLevel = Never

$ sudo pacman -Sy
#再次同步数据

三、系统的更新:

$ sudo pacman -Syu
#更新系统

$ paru
#更新系统及AUR软件

在更新时请先查看ArchLinux官网的新闻公告,看是否需要升级时人为干预;请勿无脑更新。

END(想再看一遍本教程吗?那就请在终端中输入sudo rm -rf /*,你会回来的。)