Fedora 43物理机部署复盘

张开发
2026/4/8 9:13:15 15 分钟阅读

分享文章

Fedora 43物理机部署复盘
Fedora 43系统安装关闭硬盘的BitLocker加密保护由于之前是Windows11系统默认情况下硬盘应该已经被BitLocker加密初始化了要安装双系统应该先将硬盘内容解密以免出现相关问题由于我只有一个1T的硬盘全部分给了Windows的C盘所以可以使用下面的命令查看BitLocker状态可以看到硬盘上已经被BitLocker加密了的 manage-bde -status C:BitLocker 驱动器加密: 配置工具版本 10.0.26100版权所有 (C) 2013 Microsoft Corporation。保留所有权利。卷 C: [Windows][OS 卷]大小: 951.64 GBBitLocker 版本: 2.0转换状态: 仅加密了已用空间已加密百分比: 100.0%加密方法: XTS-AES 128保护状态: 保护关闭锁定状态: 已解锁标识字段: 未知密钥保护器: 找不到如果有恢复密钥建议先把恢复密钥备份好作用是在主板/TPM/BIOS变更、启动异常、Windows系统损坏、启动项更改等应急情况下解密硬盘数据使用下面的命令彻底解密C盘manage-bde -off C:上面的解密命令是一个异步命令执行完之后需要使用下面的命令查看当前解密进度直到提示已完全解密为止 manage-bde -status C:BitLocker 驱动器加密: 配置工具版本 10.0.26100版权所有 (C) 2013 Microsoft Corporation。保留所有权利。卷 C: [Windows][OS 卷]大小: 951.64 GBBitLocker 版本: 无转换状态: 完全解密已加密百分比: 0.0%加密方法: 无保护状态: 保护关闭锁定状态: 已解锁标识字段: 无密钥保护器: 找不到关闭Windows快速启动控制面板 → 电源选项 → 选择电源按钮的功能 → 更改当前不可用的设置 → 取消勾选“启用快速启动”随后重启一次为Fedora分配安装空间磁盘管理 → 右键Windows(C:) → 压缩卷 → 输入想要的容量 →确认注意上述操作完成后应该多了一块未分配空间不要执行任何操作新建卷、格式化、分配盘符等制作Fedora 43启动U盘[!WARNING]制作启动盘会清空U盘数据建议使用空U盘或提前备份数据Fedora Media Writer易用性很高且是官方推荐的启动盘制作工具因为我想要比较定制化、节省空间的安装所以我选择的是Fedora Everything 43 Network Install这个镜像可以在安装时选择要安装哪些软件包选择iso镜像这里也提供选从网络下载的选项 → 选择U盘 → 刻录刻录完之后建议就弹出U盘因为在某些情况下Windows可能会写入额外的元数据导致后续在引导过程中的Test this media在4.8%进度时误报FAIL参考使用启动U盘安装Fedora 43重启后按FnF12进入临时启动设备选择选择Test this media Install Fedora 43检查通过后就会进入Fedora的安装界面最小化安装Base Environment选择Fedora Custom Operating SystemAdditional software全不选这里最可能有问题的是INSTALLATION DESTINATION这里由于我们按是双系统来安装的所以需要挂载Windows的EFI分区为保险起见我没有选择Automatic选择Custom进行手动分区在我的场景中显示的未知分区有​nvme0n1p1260 MiBWindows的EFI分区​nvme0n1p216 MiBWindows的保留分区​nvme0n1p3651.64 GiB ntfsWindows的C盘​nvme0n1p41.95 GiB ntfsWindows恢复分区​sda115.59 GiB iso9660当前使用的启动U盘选中nvme0n1p1EFI分区Mount Point/boot/efiDesired Capacity、Device Type、File System不动Reformat、Encrypt不勾选Update Settings新建/boot左下角Mount Point/bootDesired Capacity1 GiB​或1024 MiB确认创建随后左边会多出一个新选项选中它后在右边确认Mount Point/bootDevice TypeStandard PartitionFile System改成ext4Reformat可以勾选这个新分区可以保持格式化Encrypt不要勾Label任意如fedora-boot新建根分区/左下角Mount Point/bootDesired Capacity留空会分配剩余可用空间确认创建选中新建的根分区在右边确认Mount Point/Device Type如果它显示成 Btrfs 相关类型就保持File System建议保持btrfsEncrypt不勾选Reformat可以勾选Volume保持默认fedora_fedora整个Btrfs卷/池的名字Label可以留空Nameroot这里设置的是挂载在Btrfs里的子卷名Update Settings安装完成后重启会自动进入GRUB引导选择启动的系统Fedora/Windows环境配置由于我是最小化安装不带有桌面环境进入后为命令行界面一条命令安装DankLinux太方便啦curl -fsSL https://install.danklinux.com | sh选择窗口管理器推荐niri和终端我选的ghostty安装过程中需要提供用户密码安装脚本运行完毕后安装DankLinux专属登录界面sudo dnf copr enable avengemedia/danklinuxsudo dnf install dms-greeter重启即可进入niri桌面环境System Check中出现缺少的包自行安装补齐即可Android on Linux?Waydroid!既然已经使用Linux系统了Android其实也是一个定制化的Linux衍生系统那么理论上来讲在Linux中运行Android应该比Windows更加原生和高效通过询问LLM我了解到Waydroid这个方案应该是Linux中无感运行Android软件的最终解决方案Waydroid一种基于容器的启动完整Android系统的方法在运行Wayland桌面环境的常规GNU/Linux系统上Waydroid安装具体应参考官方安装文档对于Fedora系统可以直接从官方软件包仓库进行安装sudo dnf install waydroid初始化——下载安装lineage系统参考在国内网络环境下不建议直接运行Waydroid的可视化界面进行初始化网络原因可能导致镜像下载失败选择手动下载lineage的system和vendor镜像在官方的SourceForge页面下载注意一定要选择与本机架构相同的镜像版本例如本机为x86_64本人选择的镜像文件分别为lineage-20.0-20260312-MAINLINE-waydroid_x86_64-vendor.ziplineage-20.0-20260312-VANILLA-waydroid_x86_64-system.zip解压上述镜像文件后应该为一个system.img​一个vendor.img​两个文件都放到/usr/share/waydroid-extra/images目录下后执行sudo waydroid init -f即可初始化成功waydroid服务状态查看/启动/设置自启动似乎这并不意味着启动Waydroid里的Android系统但要启动Android系统需要这个服务建议直接设置自启动sudo systemctl status waydroid-container.servicesudo systemctl start waydroid-container.servicesudo systemctl enable waydroid-container.service在我们的环境下配置完成后直接在App Launcher启动Waydroid即可进入Android系统网络问题相关配置似乎刚进入时网络不通应该是防火墙设置的问题我们需要开放UDP的53和67端口、启用转发并添加对waydroid网卡的信任。以防出现问题参考我这里修改了Waydroid的网络配置文件/usr/lib/waydroid/data/scripts/waydroid-net.sh​将LXC_USE_NFT​设为false这里的作用是让Waydroid使用iptables而不是nftables对于Fedora系统使用firewall-cmd进行配置其他系统请查询对应命令firewall-cmd --zonetrusted --add-port67/udpfirewall-cmd --zonetrusted --add-port53/udpfirewall-cmd --zonetrusted --add-forwardfirewall-cmd --zonetrusted --add-interfacewaydroid0# 持久化firewall-cmd --runtime-to-permanent解决arm64 apk安装问题默认情况下Waydroid只支持本机架构的apk安装但市面上有很多软件不提供x86架构的安装包这需要我们为Waydroid安装一个转译层安装完成后即可无痛安装arm64架构的apk了这里直接使用社区开发的waydroid_scripts进行一键安装即可git clone https://github.com/casualsnek/waydroid_scriptcd waydroid_scriptpython3 -m venv venvvenv/bin/pip install -r requirements.txt# AMD平台下libndk效率较高Intel平台或许可以尝试libhoudinisudo venv/bin/python3 main.py install libndkwaydroid_scripts还提供很多其它功能如安装google全家桶、microg、magisk面具、隐藏状态栏等请参考项目README拷贝安装包到Waydroid的Download目录下sudo cp ~/Downloads/xxx.apk ~/.local/share/waydroid/data/media/0/Download虚拟机脱离VMware生态拥抱KVMQEMULinux下的虚拟化最出名的尤属KVMQEMU这个原生级方案通过LLM了解到Incus这个容器/虚拟机管理器可以通过命令行的形式非常便捷地进行容器与虚拟机管理安装Incus可参考官方安装文档virt-viewer是一个用于显示虚拟机图形界面的轻量级客户端。通过SPICE或VNC协议连接到由QEMU/KVM启动的虚拟机窗口后续的incus console命令就是对virt-viewer的调用封装sudo dnf install incus virt-viewernewgrp incus-adminsudo usermod -aG incus-admin $USERsudo systemctl start --now incus.socket incus.serviceincus admin init配置防火墙规则sudo firewall-cmd --zonetrusted --add-interfaceincusbr0 --permanent配置并启动一个带桌面环境的Ubuntu虚拟机# 虚拟机初始化incus init images:ubuntu/24.04/desktop my-ubuntu --vmincus config set my-ubuntu limits.cpu 4incus config set my-ubuntu limits.memory 4GiB# 安装音频驱动如果启动后出现了音频设备报错sudo dnf install qemu-audio-spice qemu-ui-spice-core# 启动虚拟机start是让虚拟机跑起来但不会弹出虚拟机的桌面incus start my-ubuntu# 连接虚拟机桌面在另一个终端运行incus console my-ubuntu --typevga# 关闭虚拟机incus stop my-ubuntuWindows在incus中配置Windows虚拟机比Linux虚拟机略复杂一些主要原因是Windows不自带KVM的VirtIO驱动会导致进入安装程序后看不到硬盘网络可能也会有问题。本段内容由AI提供本人还未实践这个问题最佳的解决方案应该是使用Distrobuilder重新封装Windows的iso镜像文件这种方法会自动将VirtIO驱动注入到Windows的安装程序(WinPE)和系统镜像中进入安装界面后能直接看到incus分配的虚拟硬盘无需再手动加载驱动。这种方式生成的镜像会预置好incus-agent的基础环境方便后续通过命令行管理且在重封装时会针对虚拟化环境做优化。本人在Gemini的“误导”下使用的是手动加载驱动的方法注入VirtIO驱动。安装virtio-winsudo wget https://fedorapeople.org/groups/virt/virtio-win/virtio-win.repo -O /etc/yum.repos.d/virtio-win.reposudo dnf install virtio-win配置Win11虚拟机incus init win11 --empty --vmincus config set win11 limits.cpu 4incus config set win11 limits.memory 8GiBincus config device override win11 root size64GiBincus config set win11 security.secureboot trueincus config set win11 security.csm false # 使用UEFI模式启动# 解决权限问题不知道是否必要这样做sudo mkdir -p /var/lib/incus/isosudo mv ~/Downloads/win11.iso /var/lib/incus/iso/sudo chmod 644 /var/lib/incus/iso/win11.isosudo chcon -t svirt_home_t /var/lib/incus/iso/win11.iso# 添加安装介质与VirtIO驱动incus config device add win11 install-media disk source/var/lib/incus/iso/win11.iso boot.priority10# 其实有一个直接的命令如下但使用这条命令我实操的时候没找到对应驱动## incus config device add win11 virtio-drivers disk source/usr/share/virtio-win/virtio-win.isoincus config set win11 raw.qemu -- -drive file/usr/share/virtio-win/virtio-win.iso,index3,mediacdrom,ifide安装Win11虚拟机通过raw.qemu​挂载了virtio-win.iso后在安装界面的“你想将Windows安装在哪里”窗口此时是一片空白需要点击“加载驱动程序”(Load driver)然后按以下路径寻找​viostor​ →w11​ →amd64解释​​viostor​​是块设备存储驱动​​w11​​对应Windows 11​​amd64​​是64位架构。随后就可以正常进行Win系统的安装了在Win11虚拟机中安装VirtIO驱动支持否则鼠标会被困在里面# 先把虚拟机关机incus config unset win11 raw.qemuincus config device remove win11 install-mediaincus config device add win11 virtio-drivers disk source/usr/share/virtio-win/virtio-win.iso# 随后开机、连接进入Win后像安装VMware Tool一样安装VirtIO驱动

更多文章