设备介绍
- AMD 锐龙 7 PRO 8845HS
- 32GBx2 DDR5 5600MHz
- PCIe 4.0 NVMe SSD 2TB
Geekbench 6 跑分结果:
- Deepin 23.1:Tianbei GEM12 - Geekbench
- Xubuntu 24.04.2:Tianbei GEM12 - Geekbench
- Manjaro KDE Plasma 25.0.3:Tianbei GEM12 - Geekbench
备份旧发行版
我并没有备份整个系统,而只是将 home 目录压缩拷贝了出来。
# 将个人目录打包
sudo tar -cf /tmp/home_xxx.tar /home/xxx
# 新开终端查看打包后大小
watch -n 1 ls -lh /tmp/home_xxx.tar系统配置
登录失败次数和锁定时间
# 修改 faillock 配置文件
$ sudo nano /etc/security/faillock.conf
# 在这个时间段内累计的失败次数如果超过 deny,则触发锁定。
fail_interval = 900
# 在 fail_interval 间隔内,允许连续输错密码的次数。超过此数值,账户将被锁定。设置为 0 表示不锁定账户。
deny = 10
# 账户被锁定后,需要等待多久才能自动解锁。设置为 0 或 never 表示必须手动通过 faillock 命令解锁。
unlock_time = 30Pacman 换源
如果在安装前选了时区和语言,/etc/pacman.d/mirrorlist开头会默认有Country : China的源。
##
## Manjaro Linux default mirrorlist
## Generated on 2025-06-30 23:48
##
## Please use 'pacman-mirrors -f [NUMBER] [NUMBER]' to modify mirrorlist
## (Use 0 for all mirrors)
##
## Country : China
Server = https://mirrors.jlu.edu.cn/manjaro/stable/$repo/$arch
## Country : United_States
Server = https://ohioix.mm.fcix.net/manjaro/stable/$repo/$arch
## Country : Bangladesh
Server = https://bd.mirror.vanehost.com/Manjaro/stable/$repo/$arch如果没有,参考 archlinux | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 换源。
或者使用命令:
sudo pacman-mirrors -c chinaPacman 配置
# 修改 Pacman 配置文件
sudo nano /etc/pacman.conf- 启用 Pacman 颜色:取消注释
#Color为Color - 调整并行下载线程数:修改
ParallelDownloads = 4的值
网络时间同步
# 启用网络时间同步
sudo timedatectl set-ntp true
# 如果是 Windows 双系统,建议设置 RTC 使用本地时间,防止切换系统后时间相差 8 小时
sudo timedatectl set-local-rtc 1 --adjust-system-clock
# 检查状态
timedatectl status终端粘贴出现 ^[[200~
# 临时解决
$ printf "\e[?2004l"
# 永久解决,追加内容
$ nano ~/.zshrc
# 禁用 Zsh 的 Bracketed Paste Mode (解决粘贴出现 ^[[200~ 的问题)
unset zle_bracketed_pasteArchLinuxCN 源
# 在末尾添加 ArchLinuxCN 源并注释
sudo nano /etc/pacman.conf
# [archlinuxcn]
# Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch
# 启用源 (使用 sed 去掉行首的 #)
sudo sed -i 's/^# *\[\(archlinuxcn\)\]/[\1]/; s/^# *\(Server.*archlinuxcn\)/\1/' /etc/pacman.conf
# 首次使用时安装 ArchLinuxCN 的 GPG 密钥
sudo pacman -Sy archlinuxcn-keyring
# 刷新数据库 (仅同步数据库,不要进行全局更新 -Su)
sudo pacman -Sy
# 安装需要的软件
sudo pacman -S ttf-maplemono-nf-cn-unhinted
# 禁用源 (安装完成后立即恢复注释,防止系统更新时混用)
sudo sed -i 's/^\[\(archlinuxcn\)\]/# [\1]/; s/^\(Server.*archlinuxcn\)/# \1/' /etc/pacman.conf加速 AUR 的 GitHub 下载和 git clone GitHub 仓库
安装 axel 多线程下载工具,创建替换 github 下载的脚本:
# 安装 axel
$ sudo pacman -S axel
# 创建脚本文件
$ sudo nano /home/duanluan/workspaces/bin/github-mirror-axel.shgithub-mirror-axel.sh:shell-scripts/github-mirror-axel.sh at main · duanluan/shell-scripts
# 保存退出后赋予可执行权限
$ sudo chmod +x /home/duanluan/workspaces/bin/github-mirror-axel.sh修改makepkg.conf:
# 复制 /etc/pacman.conf 到个人目录,避免系统更新 pacman 包时覆盖
cp /etc/makepkg.conf ~/.makepkg.conf
# 修改 ~/.makepkg.conf
nano ~/.makepkg.conf
# 找到 DLAGENTS 部分,修改为如下内容
DLAGENTS=('file::/usr/bin/curl -qgC - -o %o %u'
#'ftp::/usr/bin/curl -qgfC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u'
#'http::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
#'https::/usr/bin/curl -qgb "" -fLC - --retry 3 --retry-delay 3 -o %o %u'
'ftp::/usr/bin/axel -n 10 -a -o %o %u'
'http::/usr/bin/axel -n 10 -a -o %o %u'
'https::/home/duanluan/workspaces/bin/github-mirror-axel.sh %o %u'
'rsync::/usr/bin/rsync --no-motd -z %u %o'
'scp::/usr/bin/scp -C %u %o')遇到“没有状态文件,无法恢复下载!”提示,是因为之前使用 curl 下载到一半,现在又用 axel 下载。
删除缓存后重新下载,例如:
rm -rf ~/.cache/paru/clone/geekbench
paru geekbenchgithub 下载生效:
$ paru clash-verge-rev-bin
==> 获取源代码...
-> 正在下载 clash-verge-rev-2.4.2-x86_64.deb...
github-mirror-axel.sh 生效
正在初始化下载:https://gh-proxy.com/https://github.com/clash-verge-rev/clash-verge-rev/releases/download/v2.4.2/Clash.Verge_2.4.2_amd64.deb
File size: 47.8972 兆字节 (50223894 bytes)
正在打开输出文件 clash-verge-rev-2.4.2-x86_64.deb.part
正在开始下载
连接 0 完成下载
连接 1 完成下载
[100%] [.....................................................................................] [ 2.7MB/s] [00:00]
已下载 47.8972 兆字节,用时 17 秒。(2766.17 KB/s)配置 URL 重写,加速 GitHub Clone:
# 删除旧规则(如果配置过)
git config --global --unset-all url."https://download.fastgit.org/https://github.com/".insteadof
# 设置新规则
git config --global url."https://gh-proxy.com/https://github.com/".insteadof "https://github.com/"
# 查看所有规则
git config --global --get-regexp url克隆 github 仓库生效:
$ paru rime-ice
==> 获取源代码...
-> 正在克隆 rime-ice git 仓库...
克隆到纯仓库 '/home/duanluan/.cache/paru/clone/rime-ice-git/rime-ice'...
remote: Enumerating objects: 11879, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (35/35), done.
remote: Total 11879 (delta 24), reused 9 (delta 9), pack-reused 11835 (from 3)
接收对象中: 100% (11879/11879), 232.18 MiB | 7.03 MiB/s, 完成.参考 Archlinux AUR 加速完整设置 – 平凡生活小记
加速 curl / wget GitHub 下载
# 创建脚本文件
$ nano /home/duanluan/workspaces/bin/github-wrappers.shgithub-wrappers.sh:shell-scripts/github-wrappers.sh at main · duanluan/shell-scripts
# 授予可执行权限
$ chmod +x /home/duanluan/workspaces/bin/github-wrappers.sh
# 编辑 zsh 配置文件,在文件末尾添加
$ nano ~/.zshrc
# 加载 GitHub 镜像加速的 Shell 包装器
if [ -f /home/duanluan/workspaces/bin/github-wrappers.sh ]; then
source /home/duanluan/workspaces/bin/github-wrappers.sh
fi
# 保存退出后使配置生效
$ source ~/.zshrc修改 GitHub Host 加速
# 备份 hosts 文件
sudo cp /etc/hosts /etc/hosts.bak访问 https://github-hosts.tinsfox.com/hosts,复制内容
# 内容追加到 /etc/hosts 末尾
nano /etc/hosts参考:GitHub Host - 加速访问 GitHub | 自动更新的 Hosts 工具
或者使用脚本:shell-scripts/update-github-hosts.sh at main · duanluan/shell-scripts
安装 Fcitx5(必看)
进入系统后,Manjaro Hello 弹窗中点击Applications按钮,勾选Extended language support-Manjaro Asian Input Support Fcitx5,点击UPDATE SYSTEM按钮。

选择fcitx5-chinese-addons: 简体中文 | Simplified Chinese安装。

开始菜单,离开-注销并重新登录,按Ctrl Space切换输入法。
开始菜单搜索输入法。
可选修改配置:
配置全局选项-快捷键:切换启用/禁用输入法快捷键改成CtrlShift。
配置全局选项-行为:共享输入状态选择所有。
可选删除快捷键:
配置全局选项-快捷键:切换是否使用嵌入预编辑
键盘-汉语-右侧配置图标:切换提示模式触发一次提示模式
配置附加组件模块-标点-切换键模块-剪贴板-触发键模块-简繁转换-切换键模块-快速输入-触发键模块-云拼音-切换键模块-Unicode-触发键、使用十六进制数字输入 Unicode 字符
系统更新
开始菜单搜索软件更新,应用更新。

sudo pacman -Syu更新后要重启系统,否则系统内核和内核模块版本对不上,导致modprobe tun等命令运行失败。
DPI 缩放
开始菜单搜索显示器配置,修改全局缩放率,应用后重新登录生效。

切换个人目录下语言
# 安装 xdg-user-dirs-gtk
sudo pacman -S xdg-user-dirs-gtk
export LANG=en_US
xdg-user-dirs-gtk-update
选择“Update Names”。
export LANG=zh_CN.UTF-8
xdg-user-dirs-gtk-update勾选“不要再次询问我”,选择“保留旧的名称”。
手动删除主文件夹下残留的视频、图片、文档、下载、桌面等中文文件夹。
Dolphin 中左侧常用位置项右键编辑,修改位置。

取消 KRunner、KWin/窗口管理、plasmashell/Plasma 工作空间 的全局快捷键
取消勾选系统设置 键盘 快捷键中的活动快捷键后应用。
KRunner:
- 启动:Alt+F2
KWin/窗口管理:
- 切换到桌面1:Ctrl+F1
- 切换到桌面2:Ctrl+F2
- 切换到桌面3:Ctrl+F3
- 切换到a桌面4:Ctrl+F4
- 显示隐藏窗口平铺(窗口类):Ctrl+F7
- 显示隐藏窗口平铺(当前桌面):Ctrl+F9
- 显示隐藏窗口平铺(全部桌面):Ctrl+F10
- 暂停显示特效合成:Alt+Shift+F12
plasmashell/Plasma 工作空间:
- 激活应用程序启动器:Alt+F1
- 显示桌面:Ctrl+F12
创建虚拟屏(远程必看)
远程连接时,如果本地没有连接显示器或显示器未开启,会导致无法连接或黑屏。通过以下配置强制创建一个虚拟屏幕即可解决。
开源驱动(Intel/AMD)
通过内核参数强制创建一个虚拟接口。
# 查看当前系统识别到的显示接口 (用于确认 HDMI/DP 端口的具体名称)
$ ls /sys/class/drm/
card1 card1-DP-2 card1-HDMI-A-1 card1-HDMI-A-3 card1-HDMI-A-5 card2-DP-4 card2-DP-6 renderD128 version
card1-DP-1 card1-DP-3 card1-HDMI-A-2 card1-HDMI-A-4 card2 card2-DP-5 card2-HDMI-A-6 renderD129
# 列出各显示接口的状态,使用 disconnected 的接口名称
$ grep "^" /sys/class/drm/*/status
/sys/class/drm/card1-DP-1/status:disconnected
/sys/class/drm/card1-DP-2/status:disconnected
/sys/class/drm/card1-DP-3/status:disconnected
/sys/class/drm/card1-HDMI-A-1/status:disconnected
/sys/class/drm/card1-HDMI-A-2/status:disconnected
/sys/class/drm/card1-HDMI-A-3/status:disconnected
/sys/class/drm/card1-HDMI-A-4/status:disconnected
/sys/class/drm/card1-HDMI-A-5/status:disconnected
/sys/class/drm/card2-DP-4/status:disconnected
/sys/class/drm/card2-DP-5/status:disconnected
/sys/class/drm/card2-DP-6/status:disconnected
/sys/class/drm/card2-HDMI-A-6/status:connected
# 编辑 GRUB 配置文件
$ sudo nano /etc/default/grub
# 在 GRUB_CMDLINE_LINUX_DEFAULT 中追加 video=接口名称:分辨率@刷新率
GRUB_CMDLINE_LINUX_DEFAULT='quiet splash udev.log_priority=3 video=HDMI-A-1:3840x2160@60e'
# 更新 GRUB 引导
$ sudo grub-mkconfig -o /boot/grub/grub.cfgNVIDIA 闭源驱动(X11)
NVIDIA 驱动无法通过 GRUB 注入,需修改 Xorg 配置文件来实现“双屏并存”(真实屏+虚拟屏)。
# 查询显卡 PCI 地址,获取显卡 BusID
$ lspci | grep -i vga
# 记下 01:00.0,在配置文件中需转换为十进制格式 PCI:1:0:0
01:00.0 VGA compatible controller: NVIDIA Corporation AD107 [GeForce RTX 4060] (rev a1)
# 查看当前连接的接口名称,找到 connected 的那个,记下 DFP-4、HDMI-0
$ nvidia-settings -q dpys
[4] njcm-pc:0[dpy:4] (HDMI-0) (connected, enabled)
Has the following names:
DFP
DFP-4
DPY-EDID-b83621ba-cd9f-fefb-a8c5-a438b3e7a04b
DPY-4
HDMI-0
Connector-1
# 点击`Acquire EDID...`按钮将`edid.bin`保存到当前用户主目录
$ nvidia-settings
# 将 EDID 文件移动到 X11 目录并授权
$ sudo mv edid.bin /etc/X11/edid.bin
$ sudo chmod 644 /etc/X11/edid.bin
# 生成 1080P EDID 数据
python -c "import binascii; open('virtual_1080p.bin', 'wb').write(binascii.unhexlify('00ffffffffffff0031d8000000000000051601036d3c2278ea5e03a1544c99260f5054a1080081800101010101010101010101010101023a801871382d40582c450056502100001e000000fc004c696e7578204648440a20202020000000fd00323c1e4611000a202020202020000000ff004c696e75782023300a2020202001ba02030400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000092'))"
# 移动并授权
$ sudo mv virtual_1080p.bin /etc/X11/virtual_1080p.bin
$ sudo chmod 644 /etc/X11/virtual_1080p.bin
# 创建 Xorg 配置文件
$ sudo nano /etc/X11/xorg.conf.d/20-nvidia-headless.conf
# --- 内容如下 ---
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
# 根据 lspci 结果修改 BusID,例如 01:00.0 改为 PCI:1:0:0
BusID "PCI:1:0:0"
# --- 核心配置开始 ---
# 1. 允许无显示器启动
Option "AllowEmptyInitialConfiguration" "True"
# 2. 强制开启双端口:填入 [真实接口], [虚拟空闲接口]
# 例如:DFP-4 是真实屏幕,DFP-0 是我们要生成的虚拟屏
Option "ConnectedMonitor" "DFP-4, DFP-0"
# 3. 分别加载不同的 EDID:真实屏用原厂数据,虚拟屏用生成的 1080P 数据
Option "CustomEDID" "DFP-4:/etc/X11/edid.bin; DFP-0:/etc/X11/virtual_1080p.bin"
# --- 核心配置结束 ---
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
# 虚拟屏的默认参考分辨率
Modes "1920x1080"
EndSubSection
EndSection
Section "Monitor"
Identifier "Monitor0"
# 保持 DPMS 开启,允许 KDE 进行电源管理
Option "DPMS"
EndSection
# --- end ---
# 禁用系统自动生成的配置(通常是 90-mhwd.conf)
$ sudo mv /etc/X11/xorg.conf.d/90-mhwd.conf /etc/X11/xorg.conf.d/90-mhwd.conf.bak
# 禁用 dummy 驱动配置(如果存在)
$ sudo mv /etc/X11/xorg.conf.d/10-headless.conf /etc/X11/xorg.conf.d/10-headless.conf.bak解决物理显示器无法点亮/黑屏
当物理显示器关闭电源再打开,或系统休眠唤醒后出现黑屏(但远程正常),说明显卡信号握手失败。需配置脚本强制重置输出信号。
# 创建信号重置脚本
$ nano ~/workspaces/bin/reset_screen.sh
#!/bin/bash
# 1. 强制关闭真实显示器输出,其中 HDMI-0 替换为你的接口名称
xrandr --output HDMI-0 --off
# 等待 1 秒让电容放电/状态生效
sleep 1
# 2. 重新开启并设为主屏
# --auto: 恢复最佳分辨率
# --primary: 确保任务栏回归
# 不指定位置(--right-of),交由 KDE 自动恢复之前的布局记忆
xrandr --output HDMI-0 --auto --primary
# 保存退出后赋予可执行权限
$ chmod +x ~/workspaces/bin/reset_screen.sh开始菜单搜索快捷键-新增-命令或脚本,命令:~/workspaces/bin/reset_screen.sh。
右侧添加,输入快捷键Meta F10,右下角应用。
显示器打开电源后按Meta F10,等待几秒即可亮屏。
故障恢复
重启后无法进入图形界面,通过 SSH 登录或 TTY(Ctrl Alt F2)执行以下命令恢复:
# 恢复 GRUB 配置
sudo nano /etc/default/grub
# 删除 video= 接口名称:分辨率@刷新率 部分
# 更新 GRUB 引导
sudo grub-mkconfig -o /boot/grub/grub.cfg
# 删除自定义配置
sudo mv /etc/X11/xorg.conf.d/20-nvidia-headless.conf /etc/X11/xorg.conf.d/20-nvidia-headless.conf.bak
# 恢复系统自动生成的配置
sudo mv /etc/X11/xorg.conf.d/90-mhwd.conf.bak /etc/X11/xorg.conf.d/90-mhwd.conf
# 恢复 dummy 驱动配置(如果存在)
sudo mv /etc/X11/xorg.conf.d/10-headless.conf.bak /etc/X11/xorg.conf.d/10-headless.conf
# 重启系统
sudo reboot