Fedora 安装与设置
近未來儘未來丶前言
我选择了 Windows 11 IoT LTSC 作为操作系统,一年多以来,基本没什么大问题。但是随着主机配置老旧,我也几乎没有什么应用程序对我来说是非 Windows 不可了,所以!是时候拥抱 Linux Desktop 了。
安装 Fedora
制作镜像和启动方式再此略过,Fedora 默认支持安全启动(可能要打开允许第三方 CA 导入)。此外,我不喜欢默认的 Btrfs 文件系统,因为没有快照需求(当然,这是很不健康的实践),分区方案如下:
1 2 3 4 5 6 7 8
| NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS zram0 251:0 0 8G 0 disk [SWAP] nvme0n1 259:0 0 953.9G 0 disk └─nvme0n1p1 259:1 0 953.9G 0 part /data nvme1n1 259:2 0 931.5G 0 disk ├─nvme1n1p1 259:3 0 954M 0 part /boot/efi ├─nvme1n1p2 259:4 0 1.9G 0 part /boot └─nvme1n1p3 259:5 0 928.7G 0 part /
|
其中 /data 挂载点作为另一块 NVMe 硬盘,无需预留保留空间:
1 2 3
| sudo tune2fs -m 0 /dev/nvme0n1p1
sudo tune2fs -m 1 /dev/nvme1n1p3
|
基本配置
安装完成启动后进入初始化向导,询问启用第三方软件源,直接跳过,否则系统界面会失去响应(此前在 Fedora 42 上也是这样)。
镜像源
如果你的网络环境不太好,可以使用 USTC(或 TUNA)的国内镜像源:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| sudo sed -e 's|^metalink=|#metalink=|g' \ -e 's|^#baseurl=http://download.example/pub/fedora/linux|baseurl=https://mirrors.ustc.edu.cn/fedora|g' \ -i.bak \ /etc/yum.repos.d/fedora.repo \ /etc/yum.repos.d/fedora-updates.repo
sudo dnf install https://mirrors.ustc.edu.cn/rpmfusion/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.ustc.edu.cn/rpmfusion/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf clean all sudo dnf makecache
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo sudo flatpak remote-modify flathub --url=https://mirrors.ustc.edu.cn/flathub
|
进行一次软件包更新
1
| sudo dnf upgrade --refresh
|
更改主机名
比如更改主机名为 fedora
1
| sudo hostnamectl set-hostname fedora
|
一些优化
让 NetworkManager 别等了:
1 2
| sudo systemctl disable NetworkManager-wait-online.service sudo systemctl mask NetworkManager-wait-online.service
|
软件中心别吵我:
1 2
| gsettings set org.gnome.software download-updates false gsettings set org.gnome.software download-updates-notify false
|
关闭资源管理器记住最近文件:
1
| gsettings set org.gnome.desktop.privacy remember-recent-files false
|
硬盘读写权限
第二块 SSD 设置了挂载点 /data 作为数据盘使用,默认用户组 root 不利于日常使用,设置为普通用户
1
| sudo chown -R 1000:1000 /data
|
中文输入法
GNOME 默认自带中文输入法,以前用过体验并不太好。这里使用 Fcitx5 输入框架和 Rime 输入引擎,输入方案选择 雾凇拼音 ,皮肤就不用了,默认的在 GNOME 下就已经很好看了。
1
| sudo dnf install fcitx5 fcitx5-gtk fcitx5-qt fcitx5-rime librime-lua fcitx5-configtool
|
下载雾凇拼音输入方案
1
| git clone https://github.com/iDvel/rime-ice.git ~/.local/share/fcitx5/rime --depth=1
|
添加中州韵输入法,重新部署后和其他平台的 Rime 输入法使用体验基本一样
PS:GNOME 需要安装插件 kimpanel 后,才能在状态栏正常显示托盘图标(包括输入法指示器)。
关闭 SELinux
对于系统安全来说,禁用 SELinux 不是一个好的习惯,但是我确实不太喜欢这个,所以将它彻底关闭。
1 2 3
| sudo vim /etc/selinux/config
SELINUX=permissive
|
添加 SELinux 禁用参数:
1
| sudo vim /etc/default/grub
|
找到 GRUB_CMDLINE_LINUX_DEFAULT 添加 selinux=0,然后更新引导配置:
1
| sudo grub2-mkconfig -o /boot/grub2/grub.cfg
|
下次重启后 SELinux 就会被彻底关闭了。
更新固件
通过 LVFS (Linux Vendor Firmware Service) 更新硬件设备固件
1 2 3
| fwupdmgr refresh --force fwupdmgr get-updates fwupdmgr update
|
美化调整
GNOME 插件和优化
1
| sudo dnf install gnome-extensions-app gnome-tweaks
|
以前用 GNOME 每次更新挂一堆拓展,我只安装了几个来保证基本的实用功能。

安装常用软件
Google Chrome
1 2 3
| sudo dnf install fedora-workstation-repositories sudo dnf config-manager --set-enabled google-chrome sudo dnf install google-chrome-stable
|
Hugo
cloudflared
使用 Cloudflare Tunnel 的 SSH 用于访问我的 Forgejo 示例
1 2
| curl -fsSl https://pkg.cloudflare.com/cloudflared.repo | sudo tee /etc/yum.repos.d/cloudflared.repo sudo dnf install cloudflared
|
Evolution Mail
GNOME 原生的电子邮件客户端,支持 GPG、S/MIME,支持 EWS 协议,非常适合我
1
| sudo dnf install evolution evolution-ews
|
Antigravity
1 2 3 4 5 6 7 8 9
| sudo tee /etc/yum.repos.d/antigravity.repo << EOL [antigravity-rpm] name=Antigravity RPM Repository baseurl=https://us-central1-yum.pkg.dev/projects/antigravity-auto-updater-dev/antigravity-rpm enabled=1 gpgcheck=0 EOL sudo dnf makecache sudo dnf install antigravity
|
VScode
1 2 3 4
| sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc && echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null sudo dnf check-update sudo dnf install code
|
Docker CE
1 2 3
| sudo dnf config-manager addrepo --from-repofile https://download.docker.com/linux/fedora/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin sudo systemctl enable --now docker
|
Steam
确保已开启 RPMFusion Nonfree 软件源,使用 Proton 后大部分游戏应该都能玩,详阅 **Fedora 文档 **。
Steam Linux 只有 32 位包(即 i686),如果讨厌太多 32 位依赖「污染」你的系统,也可以考虑使用 Flatpak 安装 Steam。
1 2 3
| sudo dnf install steam
__GL_CONSTANT_FRAME_RATE_HINT=3 steam
|
Firewall GUI
这是 Fedora 官方推荐的防火墙可视化管理工具
1
| $ sudo dnf install firewall-config
|
Flatpak 是个 Linux 下的沙盒运行环境,以下软件建议通过 Flathub 安装
以下软件虽然在 Flathub 上有打包,但是体验下来会有一些问题,建议通过 RPM 包手动安装
- Bitwarden 通过 Flatpak 安装的会有权限问题
- YesPlayMusic 通过 Flatpak 安装的字体显示有问题,修复权限后歌词界面加载不出来
禁用网络连通性检测
当开启了 Tun 模式后,会影响系统的网络连通性检测,表现为

虽然并不影响使用,但是看着很难受(有没有当年 Android 刷类原生的感觉😆?)解决方法很简单,把网络连通性检测关闭就行了
1
| sudo vim /etc/NetworkManager/conf.d/90-disable-connectivity.conf
|
添加
1 2
| [connectivity] enabled=false
|
重启 NetworkManager 服务
1
| sudo systemctl restart NetworkManager
|
现在舒服多了

禁用网络连通性检测
开启转发
1 2
| sudo sysctl -w net.ipv4.ip_forward=1 sudo sysctl -w net.ipv6.conf.all.forwarding=1
|
- 如果生效,编辑 /etc/sysctl.d/99-sysctl.conf 写入这两行以使其永久生效,并执行 sudo sysctl –system
#终端透明代码:
1
| dconf write /org/gnome/Ptyxis/Profiles/自己的id/opacity 0.85
|
安装字体
挑选了比较喜欢的几个字体作为系统字体安装
整理一下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| ~/Downloads/fonts tree . ├── Harmony-OS-Sans │ ├── HarmonyOS-Sans-Black.ttf │ ├── HarmonyOS_Sans_Bold.ttf │ └── HarmonyOS_Sans_Regular.ttf ├── Maple-Mono-NF-CN │ ├── MapleMono-NF-CN-BoldItalic.ttf │ ├── MapleMono-NF-CN-Bold.ttf │ ├── MapleMono-NF-CN-Italic.ttf │ └── MapleMono-NF-CN-Regular.ttf └── OPPOSerif └── OPPOSerif.ttf
4 directories, 8 files
|
开始安装
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| sudo mkdir -p /usr/local/share/fonts/HarmonyOS-Sans sudo mkdir -p /usr/local/share/fonts/MapleMono-NF-CN sudo mkdir -p /usr/local/share/fonts/OPPOSerif
sudo cp ~/Downloads/fonts/Harmony-OS-Sans/*.ttf /usr/local/share/fonts/HarmonyOS-Sans/ sudo cp ~/Downloads/fonts/Maple-Mono-NF-CN/*.ttf /usr/local/share/fonts/MapleMono-NF-CN/ sudo cp ~/Downloads/fonts/OPPOSerif/*.ttf /usr/local/share/fonts/OPPOSerif/
sudo chown -R root: /usr/local/share/fonts/* sudo chmod 644 /usr/local/share/fonts/*/*.ttf sudo restorecon -vFr /usr/local/share/fonts/
sudo fc-cache -fv
|
设置Snapper快照
- 一键安装 Snapper 与图形化界面
1
| sudo dnf install snapper btrfs-assistant python3-dnf-plugins-extras-snapper
|
- 为系统盘(根目录)创建快照配置
1
| sudo snapper -c root create-config /
|
- 为home(用户目录)创建快照配置
1
| sudo snapper -c home create-config /home
|
- 开启自动清理服务
1 2
| sudo systemctl enable --now snapper-cleanup.timer sudo systemctl enable --now snapper-timeline.timer
|
修复GRUB引导
- 重启电脑从U盘进入Live桌面,打开终端,先清理旧挂载再重新操作:
1 2
| sudo umount -l /mnt 2>/dev/null
|
- 挂载Fedora Btrfs根子卷
1
| sudo mount -o subvol=root /dev/nvme0n1p4 /mnt
|
- 挂载独立boot分区(ext4)
1
| sudo mount /dev/nvme0n1p3 /mnt/boot
|
- 挂载ESP分区
1
| sudo mount /dev/nvme0n1p2 /mnt/boot/efi
|
- 绑定系统虚拟目录
1 2 3 4
| sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo mount --bind /run /mnt/run
|
- 进入chroot
1
| sudo chroot /mnt /bin/bash
|
- 核心修复 — 修正fstab挂载配置(最关键)
1 2
| blkid /dev/nvme0n1p2 /dev/nvme0n1p3 /dev/nvme0n1p4
|
- 编辑fstab文件
- 把里面的内容替换成下面的(已经对应你三个分区的准确 UUID):
1 2 3 4 5 6 7 8
| UUID=7a26b4a8-d69e-42a4-80d4-b7dfc1bf26ff / btrfs subvol=root,compress=zstd:1 0 0 UUID=6a92e79d-547e-4c6a-99a8-8786da68fd0a /boot ext4 defaults 0 0 UUID=23CA-388C /boot/efi vfat umask=0077,shortname=winnt 0 2
UUID=7a26b4a8-d69e-42a4-80d4-b7dfc1bf26ff / btrfs subvol=root 0 0 UUID=6a92e79d-547e-4c6a-99a8-8786da68fd0a /boot ext4 defaults 1 2 UUID=23CA-388C /boot/efi vfat umask=0077,shortname=winnt 0 2 UUID=7a26b4a8-d69e-42a4-80d4-b7dfc1bf26ff /home btrfs subvol=home 0 0
|
- 重建 initramfs(修复磁盘驱动挂载)
- 重新生成 GRUB 引导菜单
1 2 3
| dnf reinstall shim-x64 grub2-efi-x64 grub2-tools os-prober -y echo "GRUB_DISABLE_OS_PROBER=false" >> /etc/default/grub grub2-mkconfig -o /boot/grub2/grub.cfg
|
- 退出并重启
1 2 3
| exit sudo umount -R /mnt reboot
|
主题和图标
**vinceliuice **是一位来自中国的设计师(使用 Linux),他设计的主题和图标包都非常棒。
- 图标主题:WhiteSur-icon-theme Marble-blue-dark
- 全局主题:WhiteSur-gtk-theme
Marble-blue-dark主题设置
1 2 3 4 5 6
| cd ~/Marble-shell-theme && python3 install.py -ri -a --panel-no-pill
cd ~/Marble-shell-theme && python3 install.py -ri -a --panel-no-pill --launchpad
cd ~/Marble-shell-theme && python3 install.py -ri -a --panel-no-pill --launchpad --wider-panel
|
后续调整优化
参考资料