ArchLinux安装
Extious

启动U盘

下载镜像

Ventoy烧录

进入BIOS中关闭Secure Boot

调整启动方式为UEFI(对应磁盘格式为GPT,之后格式化的时候会改)

使用U盘启动

进入如下archlinux的live页面

image

基础安装

  1. 进入 Live 环境后关闭 reflector:

systemctl stop reflector

reflector 会根据速度自动修改镜像源,但是由于只考虑最新的20个镜像站,其结果大多数时候都不怎么好用。

  1. 确保使用的UEFI模式:

ls /sys/firmware/efi/efivars

若有效输出则已启动

  1. 连接网络

1
2
3
4
5
iwctl                           #执行iwctl命令,进入交互式命令行
device list #列出设备名,比如无线网卡看到叫 wlan0
station wlan0 scan #扫描网络
station wlan0 get-networks #列出网络 比如想连接YOUR-WIRELESS-NAME这个无线
station wlan0 connect YOUR-WIRELESS-NAME #进行连接 输入密码即可exit

可以等待几秒等网络建立连接后再进行下面测试网络的操作。

ping ``www.gnu.org

如果你不能正常连接网络,首先确认系统已经启用网络接口:

1
2
ip link  #列出网络接口信息,如无线联网的设备叫wlan0
ip link set wlan0 up #比如无线网卡看到叫 wlan0

如果随后看到类似 Operation not possible due to RF-kill的报错,继续尝试 rfkill命令来解锁无线网卡:rfkill unblock wifi

  1. 更新系统时钟

1
2
timedatectl set-ntp true    #将系统时间与网络时间进行同步
timedatectl status #检查服务状态
  1. 磁盘分区

一个通用的方案:

挂载点 分区 分区类型 建议大小 备注
/mnt/boot /dev/sda1 或/dev/nvme0n1p1 EFI System 512 MiB ESP 分区
/mnt /dev/sda2 或/dev/nvme0n1p2 Linux x86-64 root 100 GiB(至少 50 GiB) Arch Linux 的根分区
/mnt/home /dev/sda3 或/dev/nvme0n1p3 Linux home 剩余磁盘空间 Arch Linux 的 home 分区

首先将磁盘类型转换为GPT格式,这里假设比如你想安装的磁盘名称为 sdx。如果你使用 NVME 的固态硬盘,你看到的磁盘名称可能为 nvme0n1。

1
2
3
4
5
lsblk                       #显示分区情况 找到你想安装的磁盘名称
parted /dev/sdx #执行parted,进入交互式命令行,进行磁盘类型变更
(parted)mktable #输入mktable
New disk label type? gpt #输入gpt 将磁盘类型转换为gpt 如磁盘有数据会警告,输入yes即可
quit #最后quit退出parted命令行交互

然后进行分区操作

1
2
cfdisk /dev/sdx #来执行分区操作,分配各个分区大小,类型
fdisk -l #分区结束后, 复查磁盘情况

其次是格式化操作

1
2
mkfs.ext4  /dev/sdax            #格式化根目录和home目录的两个分区
mkfs.vfat /dev/sdax #格式化efi分区

最后是挂载操作

在挂载时,挂载是有顺序的,先挂载根分区,再挂载 EFI 分区。 这里的 sdax 只是例子,具体根据你自身的实际分区情况来。

1
2
3
4
5
mount /dev/sdax  /mnt
mkdir /mnt/efi #创建efi目录
mount /dev/sdax /mnt/efi
mkdir /mnt/home #创建home目录
mount /dev/sdax /mnt/home
  1. 建立交换文件(可选)

交换文件相当于 Windows 中的虚拟内存,也就是利用硬盘空间充当内存。当内存相对不足时,部分内存中的内容会交换到硬盘中,从而释放内存。关于 swap 的重要性,有两篇不错的文章,推荐读者阅读。

https://farseerfc.me/zhs/in-defence-of-swap.html

https://farseerfc.me/zhs/followup-about-swap.html

推荐swap大小

内存大小 2 GiB 4 GiB 8 GiB 16 GiB 32 GiB 64 GiB
推荐的交换文件大小(使用休眠功能) 4096 MiB 5793 MiB 8192 MiB 11585 MiB 16384 MiB 23170 MiB
推荐的交换文件大小(不使用休眠功能) 4096 MiB 5793 MiB 8192 MiB 8192 MiB 4096 MiB 0 MiB

建立交换文件的具体操作方法如下。

首先使用 dd 创建交换文件。例如,创建一块 8 GiB (=8192 MiB)大小的交换文件。

1
dd if=/dev/zero of=/mnt/swapfile bs=1M count=8192 status=progress

如果您需要创建其他大小的交换文件,请将 count= 后面的数值换成交换文件大小的 MiB 数(GiB 数 x 1024)。

然后修改权限

1
chmod 0600 /mnt/swapfile

最后格式化并启用swap

1
2
mkswap -U clear /mnt/swapfile
swapon /mnt/swapfile
  1. 选择软件仓库镜像

  2. reflector

推荐使用reflector,使用如下命令选择镜像。此命令将为您选出位于平均同步延迟在 3 小时以内的,位于中国的 https 镜像,并根据速度排序。指定 –completion-percent 95(默认为100)的目的是防止忽略可用的镜像。

1
reflector -p https -c China --delay 3 --completion-percent 95 --sort rate --save /etc/pacman.d/mirrorlist

也可使用得分排序

1
reflector -p https -c China --delay 3 --completion-percent 95 --sort score --save /etc/pacman.d/mirrorlist
  1. 手动自行修改

也可以手动修改 /etc/pacman.d/mirrorlist配置文件,使用vim或nano在 /etc/pacman.d/mirrorlist中添加镜像源

1
2
3
4
5
6
7
8
root@archiso ~ # nano /etc/pacman.d/mirrorlist

/etc/pacman.d/mirrorlist
------------------------
Server = https://mirrors.bfsu.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.sjtug.sjtu.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinux/$repo/os/$arch
Server = https://mirrors.ustc.edu.cn/archlinux/$repo/os/$arch

默认先使用第一行的镜像源

完整镜像源列表可以参考官方文档

  1. 安装系统

安装必需的基础包

1
pacstrap /mnt base base-devel linux linux-headers linux-firmware  #base-devel在AUR包的安装是必须的

可能有警告但是一定应该没有报错

如果报告“验证软件包错误”,可以尝试以下方法,然后重新安装。

1
2
3
pacman-key --init  # 初始化密钥环
pacman-key --populate
pacman -Sy archlinux-keyring # 更新 archlinux-keyring

安装必需的功能性软件

1
pacstrap /mnt dhcpcd iwd vim bash-completion   #一个有线所需(iwd也需要dhcpcd) 一个无线所需 一个编辑器 一个补全工具
  1. 生成fstab文件

fstab是一个系统文件,决定了系统启动时如何自动挂载分区。没有 fstab,系统将找不到根分区,从而无法启动。

Arch Linux 提供了自动生成 fstab 的工具,我们利用它直接生成。

1
genfstab -U /mnt >> /mnt/etc/fstab

其中 genfstab -U /mnt是以 UUID 的描述方式生成 fstab,“>>” 的意思是,将输出结果附加在后面的文件之后。

生成完成后,记得使用 cat 命令打印文件内容,仔细检查一遍。

1
cat /mnt/etc/fstab
  1. Change root

我们使用 arch-chroot 工具切换到新安装的系统,以后的操作就可以在新安装的系统中完成了。

1
arch-chroot /mnt
  1. 时区设置

将时区设置为中国上海

1
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

然后设置硬件时间

1
hwclock --systohc
  1. 设置Locale进行本地化

Locale 决定了地域、货币、时区日期的格式、字符排列方式和其他本地化标准。

首先使用 vim 编辑 /etc/locale.gen,去掉 en_US.UTF-8 所在行以及 zh_CN.UTF-8 所在行的注释符号(#)。

这里需要使用 vim 的寻找以及编辑功能,具体可自行查询

1
2
3
vim /etc/locale.gen
locale-gen #编辑修改之后生成locale
echo 'LANG=en_US.UTF-8' > /etc/locale.conf #最后向 /etc/locale.conf 导入内容
  1. 网络配置

  2. 设置主机名

1
2
3
[root@archiso ~]# vim /etc/hostname
----------------------------------
我的主机名(myarch)
  1. 网络管理器

需要安装一个网络管理器,笔者推荐使用 NetworkManager。

1
pacman -S networkmanager

NetworkManager 附带一个守护程序。在 Arch Linux 中,守护程序由 systemd 管理。systemd 是非常重要的系统程序。现在我们使用 systemd 设置 NetworkManager 开机自动启动。

1
systemctl enable NetworkManager.service
  1. root密码

设置root用户密码

1
2
3
4
[root@archiso ~]# passwd
New password: # 请输入密码,这里不会显示“*”,这是正常现象
Retype new password:
passwd: password updated successfully
  1. 引导加载程序

推荐使用GRUB,本文章只针对UEFI启动模式的电脑,对于BIOS启动模式的电脑可查看参考文章

  1. 安装微码

先查看CPU型号:

1
cat /proc/cpuinfo | grep "model name"

如果是 Intel CPU,安装 intel-ucode。

1
pacman -S intel-ucode

如果是 AMD CPU,安装 amd-ucode。

1
pacman -S amd-ucode
  1. 安装引导程序

1
2
pacman -S grub efibootmgr   #grub是启动引导器,efibootmgr被 grub 脚本用来将启动项写入 NVRAM。
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB

可以对配置文件进行修改:编辑/etc/default/grub 文件,去掉 GRUB_CMDLINE_LINUX_DEFAULT一行中最后的 quiet 参数,同时把 log level 的数值从 3 改成 5,这样是为了后续如果出现系统错误,方便排错。同时在同一行加入 nowatchdog 参数,这可以显著提高开关机速度。

1
vim /etc/default/grub

最后生成GRUB所需的配置文件

1
grub-mkconfig -o /boot/grub/grub.cfg
  1. 重启

首先退出chroot环境

1
exit

然后关闭交换文件(如果有)

1
swapoff /mnt/swapfile

随后,取消挂载/mnt

1
umount -R /mnt

最后重启计算机

1
reboot

至此基本的Arch Linux系统已安装成功

界面配置

  1. 网络连接

重启之后使用root账户登陆,然后连接wifi:

1
2
nmcli device wifi list  # 列出可连接的 WiFi
nmcli device wifi connect "SSID" password "密码" # 连接 WiFi

可以使用ping工具检验

  1. 创建普通用户

新安装的系统只有一个超级用户,即 root。使用 root 进行日常操作是不安全的。应当创建普通用户进行日常操作,仅在管理系统时使用 root。

1
2
3
4
5
[root@xxxx ~]# useradd -m -G wheel 用户名  # 创建用户,并为其创建家目录,将其加入 wheel 组
[root@xxxx ~]# passwd 用户名 # 为新用户设置密码
New password:
Retype new password:
passwd: password updated successfully

普通用户的权限又太低了,有时我们需要 root 权限进行系统管理,比如系统更新。这时我们需要提升权限。

为了提升权限,我们需要配置一个工具,我们的工具是 sudo

需要使用vim编辑 /etc/sudoers进行配置,由于该文件十分重要,推荐通过visudo工具编辑,该工具提供了语法检查,防止文件错误。

1
EDITOR=vim visudo  #需要以 root 用户运行 visudo 命令

找到 #%wheel ALL=(ALL:ALL) ALL这一行,将#注释去掉,:wq保存退出

  1. 配置系统默认编辑器

编辑 EDITOR=vim sudoedit /etc/profile 文件,加入如下内容,将 vim 设置为默认 EDITOR

1
export EDITOR='vim'

这样就不用在每次执行命令时都指定一遍 EDITOR=vim 了。

重启之后可以使用 sudo -e编辑文件了

  1. pacman配置

pacman是 Arch Linux 的包管理器,负责安装、卸载、更新和查找软件包。我们为了让它更好地运行,需要进行如下配置:

  • 启用颜色显示
  • 启用并行下载
  • 启用 multilib 仓库
  • 启用 archlinuxcn 仓库
  • 安装 pkgstats

主要是编辑 /etc/pacman.conf文件

1
sudo -e /etc/pacman.conf

为了启用颜色显示和并行下载([12]),请取消 Color 和 ParallelDownloads = 5 之前的“#”:

1
2
3
4
5
/etc/pacman.conf
-------------------------------------
# Misc options
Color
ParallelDownloads = 5

其次,如果您需要在 Arch Linux 中运行 Steam 和 Wine(Steam 是 Valve 公司开发的游戏分发平台;Wine 是 Windows 兼容层,可以使您在 Linux 中运行 Windows 程序),请启用 multilib 仓库。该仓库提供 32 位软件包。请搜索“multilib”,取消下述两行之前的“#”。

1
2
3
4
/etc/pacman.conf
-------------------------------------
[multilib]
Include = /etc/pacman.d/mirrorlis

然后,推荐启用 archlinuxcn 仓库。该仓库是由 Arch Linux 中文社区驱动的非官方软件仓库,包含许多官方仓库未提供的额外的软件包,以及已有软件的 git 版本等变种,提供了大量适合国人使用的软件包。

请在文件最后新建一行,输入:

1
2
3
4
/etc/pacman.conf
-------------------------------------
[archlinuxcn]
Server = https://mirrors.bfsu.edu.cn/archlinuxcn/$arch

如果您开启了 archlinuxcn 仓库,请安装 archlinuxcn-keyring。

1
2
pacman -Syyu
pacman -S archlinuxcn-keyring

如果 pacman -S archlinuxcn-keyring出现如下错误

1
error: archlinuxcn-keyring: signature from "Jiachen YANG (Arch Linux  Packager Signing Key) <[email protected]>" is marginal trust

需要 sudo pacman-key --lsign ``[email protected]具体见ArchLinux论坛

最后,建议安装 pkgstats。这个软件包将您安装的软件列表、镜像源和计算机架构定期上传到 Arch Linux 官方,反馈该信息有利于系统的发展,这也是为开源社区的贡献。如果您不希望上传软件列表,请跳过此步。要想查看统计数据,请前往 pkgstats.archlinux.de

1
pacman -S pkgstats
  1. 软件包缓存清理

使用 pacman 安装和更新软件包时,软件包会下载到 /var/cache/pacman/pkg/ 目录下。久而久之,缓存会占据大量的存储空间。因此,定期清理软件包缓存是必要的。

推荐安装 pacman-contrib软件包,然后开机自动启动 paccache.timer,以便每周自动清理不使用的软件包缓存。

1
2
pacman -S pacman-contrib
systemctl enable paccache.timer
  1. 安装KDE桌面环境

1
pacman -S plasma-meta konsole dolphin  #安装plasma-meta元软件包以及终端和文件管理器
  1. 配置SDDM

登陆屏幕

1
systemctl enable sddm
  1. 安装基础功能包

1
2
3
4
5
6
7
8
9
10
sudo pacman -S sof-firmware alsa-firmware alsa-ucm-conf                     #一些可能需要的声音固件
sudo pacman -S ntfs-3g #识别NTFS格式的硬盘
sudo pacman -S adobe-source-han-serif-cn-fonts wqy-zenhei #安装几个开源中文字体 一般装上文泉驿就能解决大多wine应用中文方块的问题
sudo pacman -S noto-fonts-cjk noto-fonts-emoji noto-fonts-extra #安装谷歌开源字体及表情
sudo pacman -S firefox chromium #安装常用的火狐、谷歌浏览器
sudo pacman -S ark #与dolphin同用右键解压
sudo pacman -S p7zip unrar unarchiver lzop lrzip #安装ark可选依赖
sudo pacman -S packagekit-qt5 packagekit appstream-qt appstream #确保Discover(软件中心)可用 需重启
sudo pacman -S gwenview #图片查看器
sudo pacman -S git wget kate bind #一些工具
  1. 设置系统为中文

设置中寻找,如果显示中文不全可能是 ~/.config/plasma-localerc 里的 LANG 变量缺少 .UTF-8。

具体参考ArchLinux论坛

  1. 安装输入法

1
2
3
4
5
6
sudo pacman -S fcitx5-im #基础包组
sudo pacman -S fcitx5-chinese-addons #官方中文输入引擎
sudo pacman -S fcitx5-anthy #日文输入引擎
yay -S fcitx5-pinyin-moegirl #萌娘百科词库 由于中国大陆政府对github封锁,你可能在此卡住。如卡住,可根据后文设置好代理后再安装
sudo pacman -S fcitx5-pinyin-zhwiki #中文维基百科词库
sudo pacman -S fcitx5-material-color #主题

设置环境变量:编辑文件 EDITOR=vim sudoedit /etc/environment 加入以下内容。konsole 以及 dolphin 都需要这些环境变量,倒是 chrome 和 firefox 都不需要就可以输入中文

1
2
3
4
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx

打开 系统设置区域设置输入法 ,先点击 运行Fcitx即可,拼音为默认添加项。如你还需要更多输入法如五笔,则再点击 添加输入法,找到简体中文下的五笔 ,点击添加即可加入五笔输入法。

接下来点击 拼音 右侧的配置按钮,点选 云拼音在程序中显示预编辑文本 最后应用。

回到输入法设置,点击 配置附加组件,找到 经典用户界面 在主题里选择一个你喜欢的颜色 最后应用。

注销,重新登陆,就可以发现已经可以在各个软件中输入中文了

成为合格的系统管理员

LInux进阶书籍(基于ArchLInux)

参考文档

ArchLinux文档

ArchLinuxStudio文档

zhihu参考文档

由 Hexo 驱动 & 主题 Keep
总字数 39.4k 访客数 访问量