Arch Linux 安装后续操作

紧接着上篇安装教程,本篇将介绍安装后的后续操作,包括安装桌面环境、显卡驱动、Timeshift 和必要操作

在上篇教程Archlinux Install Guide 我介绍了如何安装一个经过加密的系统。

但是我没有介绍后序应该做些什么。在这篇教程我就会介绍如何处理剩余的步骤。

需要注意的是:当前状态是刚刚完成上篇教程,还没有任何其他操作的状态。

Systemd-homed

System-homed 是一个家目录管理器(以下将使用 homed 代替),它可以提供不依赖系统的移植功能,但是我们使用它不是因为它的可移植性,主要是为了他的安全性。

homed 可以实现使用额外的虽然我们已经使用luks加密了整个根目录,但是那只是静态的加密。还记得吗?当我们进入系统后,目录将被解密。其他用户或管理员可以通过有访问权限或者非法的方式访问我们的家目录。所以额外的加密可以防止其他用户进行访问。 密码管理家目录,这不同于登录密码。登录密码可以被 root 用户进行更改,而 homed 可以用 luks 进行加密,root 用户在不知道密码的情况下无法访问你家目录中的信息。

安装

实际上 homed 已经是 systemd 的一部分了,不需要安装。只需要启动即可。

启动

我们只需要启动服务即可,执行如下命令。

systemctl enable --now systemd-homed.service

输入后你可以检查一下启动情况。

systemctl status systemd-homed.service

你应该输出如下相似内容,你只需要注意 Loaded: 行中的 enabled 字样即可,这证明已经开机自启动。

lyle@arch ~> systemctl status systemd-homed.service
 systemd-homed.service - Home Area Manager
      Loaded: loaded (/usr/lib/systemd/system/systemd-homed.service; enabled; preset: enabled)
    Drop-In: /usr/lib/systemd/system/systemd-homed.service.d
              └─10-nvidia-no-freeze-session.conf
      Active: active (running) since Tue 2025-06-17 16:03:23 CST; 45min ago
  Invocation: ********************************
        Docs: man:systemd-homed.service(8)
              man:org.freedesktop.home1(5)
    Main PID: 779 (systemd-homed)
      Status: "Processing requests..."
      Tasks: 1 (limit: 37404)
      Memory: 15.8M (peak: 78M)
        CPU: 1.219s
      CGroup: /system.slice/systemd-homed.service
              └─779 /usr/lib/systemd/systemd-homed

创建新的用户

warning

需要注意的是,我们目前正在使用 root 用户。如果你想将原有用户转变成由 homed 管理的账户你需要参考 Wiki 进行处理,本教程选择直接创建新的用户,并手动迁移数据。

我们直接使用命令创建一个新用户,使用如下命令。

homectl create <USERNAME> --disk-size <SIZE>

需要注意的是你需要替换 <USERNAME> 为你想要的用户名,替换 <SIZE> 为你想要的空间需要注意的是,如果你没有手动设置 --disk-size,那将自动赋予很大的空间给用户,可能有可用空间的 80% 大小大小。如下例子:

root@arch ~> homectl create test_user --disk-size 1G
Password suggestions: Eroc#ArwAnyx,o $YwEk-owoPfOj[ [ozYKRIxfad=aJ =ecxuzAGeSGonw ubyzv3k0fUsxUv YGahaj#Aq24KAf
🔐 Please enter new password for user test_user:                         
🔐 Please enter new password for user test_user (repeat):                         

需要注意的是,密码是有要求的,至少要大于八个字符。

检视账户

当你创建了用户后,你可以使用如下命令检视的你账户。

homectl inspect test_user

你将会得到如下内容。

lyle@arch ~> homectl inspect test_user 
Warning: lacking rights to acquire privileged fields of user record of 'test_user', output incomplete.
    User name: test_user
        State: inactive
  Disposition: regular
  Last Change: Tue 2025-06-17 16:54:25 CST
    Login OK: yes
          UID: 60255
          GID: 60255 (test_user)
    Directory: / (fallback)
    Blob Dir.: /var/cache/systemd/home/test_user
      Storage: luks (strong encryption)
  Image Path: /home/test_user.home
    Removable: no
        Shell: /usr/bin/systemd-home-fallback-shell (fallback)
LUKS Discard: online=no offline=yes
    LUKS UUID: b3f1cec2-7e0f-472b-a56c-ca54fa10a0f1
    Part UUID: 30b9efee-04bd-4329-b069-cce98b5a8745
      FS UUID: a063e796-2fa6-4df0-9c1e-d2746ee2ab6d
  File System: btrfs
  LUKS Cipher: aes
  Cipher Mode: xts-plain64
  Volume Key: 256bit
  Mount Flags: nosuid nodev exec
    Disk Size: 1G
  Disk Floor: 256M
Disk Ceiling: 419.2G
  Auth. Limit: 30 attempts per 1min
    Rebalance: off
    Passwords: none
  Local Sig.: yes
      Service: io.systemd.Home
  Self Modify: realName
              emailAddress
              iconName
              location
              shell
              umask
              environment
              timeZone
              preferredLanguage
              additionalLanguages
              preferredSessionLauncher
              preferredSessionType
              pkcs11TokenUri
              fido2HmacCredential
              recoveryKeyType
              lastChangeUSec
              lastPasswordChangeUSec
      (Blobs) avatar
              login-background
  (Privileged) passwordHint
              hashedPassword
              pkcs11EncryptedKey
              fido2HmacSalt
              recoveryKey
              sshAuthorizedKeys

你可以在这里看到你的基础信息。如果说这里有什么需要注意的,我觉得仅需要注意一下 Disk Size,确定大小是你设置的即可。

登录

只需正常登录即可。

授予权限

在执行下一步操作之前,你需要给自己的账户授权。

执行这段命令 echo "<USERNAME> ALL=(ALL:ALL) ALL" >> /mnt/etc/sudoers.d/<USERNAME>

需要注意的是,你需要更改 <USERNAME> 为你的用户名。

这将授权你的账户可以使用 sudo 来提权。

禁用 root 账户

当你可以正常登录你访问的账户后,你应该做的第一件事就是禁用 root 账户,你不应该将 root 账户作为长时间使用的账户, 这会大大增加危险面!

使用命令:sudo usermod -s /usr/bin/nologin root 来禁止 root 账户。这将禁止使用任何方式登录 root 账户。

如果你想结束禁用你可以执行:sudo usermod -s /bin/bash root

以下所有操作都将在新用户上执行。

安装 N 卡驱动

如果你的电脑包含显卡,且是 NVIDIA 的显卡。你可能需要这个步骤。

安装

你只需要安装 nvidia-open 即可。目前 nvidia-open 的维护良好,还不错。

sudo pacman -S nvidia-open

安装 Gnome

我个人是比较喜欢 Gnome,它的开箱即用和动态工作区比较吸引我,虽然我之前使用 KDE 🤦‍♂️。

安装

安装过程还是比较简单的,只需要输入如下命令:

sudo pacman -S gnome

启动 Gnome

Gnome 通过 GDM 启动,可以通过如下命令启动

sudo systemctl start gdm.service

这将通过 Systemd 启动桌面。确定可以正确启动后可以通过如下命令来让桌面开机自启。

sudo systemctl enable gdm.service

配置 ZRAM

还记得之前安装系统时并没有设置 swap 交换分区。现在我们用 ZRAM 配置,这类似虚拟交换分区。

安装

我们使用如下命令安装 zram-generator

sudo pacman -S zram-generator

安装后我们还需要设置配置文件,如下所示:

[zram0]
zram-size = min(ram / 2, 4096)
compression-algorithm = zstd/etc/systemd/zram-generator.conf

这将生成一个最大 4G 最小为你现有内存一半大小例如你的内存4G,分区大小就是2G,如果内存是16G,那么分区就是4G。的虚拟交换分区。

其他是指你可以参考 zram-generator config

启动

因为你之前调整了 systemd 的配置,你需要使用 sudo systemctl daemon-reload 来重载配置。

使用命令 sudo systemctl enable -now systemd-zram-setup@zram0.service 来启动服务。

启动后你可通过 lsblk 命令看到 [SWAP] 虚拟分区了。

lyle@arch ~> lsblk
NAME           MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
loop0            7:0    0   512G  0 loop  
└─home-lyle    253:2    0   512G  0 crypt /home/lyle
zram0          252:0    0     4G  0 disk  [SWAP]
nvme1n1        259:0    0 476.9G  0 disk  
├─nvme1n1p1    259:1    0   511M  0 part  /efi
└─nvme1n1p2    259:2    0 476.4G  0 part  
  └─linuxroot  253:0    0 476.4G  0 crypt /

Timeshift

在上篇教程中我们说要使用 Timeshift 来备份系统,但是上篇文章中没有编写这部分内容。

安装

因为我们的安装流程中对 Btrfs 的配置符合 Timeshift 的要求,所以配置方式异常简单。

使用 sudo pacman -S timeshift 安装 timeshift。

启动定时任务

Timeshift 需要定时任务来处理每天备份、每月备份等任务。

使用命令 sudo systemctl enable --now croine.service 启动定时服务。

配置 Timeshift

因为已经安装了桌面环境,所以直接启动 Timeshift 按流程配置就行,基本上无脑下一步就行。

安装中文字体

简单安装 CJK 字体即可

执行命令: sudo pacman -S noto-fonts noto-fonts-cjk

你还可以安装 ttf-twemoji-colorttf-bitstream-vera 来获得 emoji。

安装 Git

主要后续需要,执行命令:sudo pacman -S git

安装 Paru

Paru 是使用 Rust 编写的 AUR 帮助程序,类似 yay。

执行命令

sudo pacman -S --needed base-devel
git clone https://aur.archlinux.org/paru.git
cd paru
makepkg -si

它的使用方法和 Pacman 差不多,例如 paru -Sparu -Rs,安装、卸载等操作。

danger

绝对不要使用 sudo 来启动 paru

安装 1Password

我的大多数密码都用 1Password 管理,所以必须安装。

根据 1Password 文档 操作即可。

安装 Fcitx5 输入法

我选择使用雾凇拼音

安装

安装 paru -S fcitx5 fcitx5-rime fcitx5-configtool fcitx5-qt fcitx5-gtk,这将安装基础框架。

然后我们安装雾凇拼音,执行命令:paru -S rime-ice-git

然后在终端中执行命令 fcitx5-configtool,然后在右侧找到 rime 调整到左侧。然后选择方案即可。

你可以参考这篇文章

Gnome Extensions

我们可以安装Input Method Panel来统一输入法面板。

Rog 控制器

如果你使用 Rog 的电脑,你可以安装控制器来控制你的电脑,包括电源管理、风扇管理等功能。

你可以访问 Rog Linux 来操作。

启动蓝牙

你只需要执行命令:sudo systemctl enable --now bluetooth.service

防火墙

防火墙是必要的!我们使用 Firewalld 来处理。

执行 paru -S firewalld 安装防火墙。执行 sudo systemctl enable --now firewalld.service

总结

这篇文章我们完成基本的系统安装,现在你可以尽情地遨游在 Linux 的海洋中了!