各位彦祖们,分享下你们对我这个场景下 Linux 发行版使用的看法呗~

需求如下:
硬件:
台式机-KVM 宿主机用途,linux 系统;
笔记本-瘦客户机(spice/rdp 客户端用),系统 windows/linux 都可
用途:
台式机:
1 、目前( AlmaLinux 9 )用来做 KVM 宿主机用,系统选择 Linux ,刚需是 qemu+KVM+Spice+QXL 。KVM 使用方式从 原 virt-manager -> qemu-kvm 命令,原因是 virt-manager 无法以脚本保存虚拟机配置每次导入硬盘还得重新点点点各种配置,qemu-kvm 可以,不太想用 libvirt 是因为它好复杂,它的 xml 参数含义和 virsh 和 virt-install 命令选项,在 man 里面查看,内容是 man qemu 所有选项的 N 倍,其次 libvirt 也是 qemu-kvm 套娃只不过多了 cpu pinning 和存储池、多网络配置,而且它的网络配置还不是直接/etc/sysconfig/if-*里面保存,得运行虚拟机才能查看到的。
2 、目前( Fedora 40 )没有兴趣折腾 PVE ,虽然 PVE 号称主打管理 KVM 方便的 type1 虚拟化宿主系统,最终应该也是调用 qemu-kvm 去跑吧(个人猜测)。虚拟机需要 1 个 windows 装微信、office 和其它国产毒瘤软件,虽然 linux 可以装,但还是做系统隔离这些毒瘤软件吧

笔记本:用来访问虚拟机桌面,刚需是 spice 和 rdp 客户端,非刚需是 chrome 看看视频,系统无要求,Arch 、Fedora 、Debian Testing 、Windows 都行

我的疑问是:
台式机的系统用什么 Linux 发行版?
1 、想使用尽可能原始的发行版派系,例如 Debian 及其衍生版 Ubuntu 、Linux Mint 等,RHEL 及其衍生版 RockyLinux 、AlmaLinux 等,Arch 及其衍生版 manjaro 等,这三大派系我会这么选择:Debian 派系选择 Debian ,不太考虑其衍生版本,喜欢原始一点别瞎改,尤其是 Ubuntu(内置 snap 还带广告、经常提示错误报告),RHEL 派系选 AlmaLinux ,因为 RHEL(没钱买,不想白嫖它的开发者订阅),Arch 派系选择 Arch ,不考虑其衍生版。虽然存在即是合理,长江后浪推前浪。尽可能选祖宗发行版是因为站在巨人的肩膀上(基于原始祖宗版)说明还是巨人更强。
2 、qxl 驱动的支持 qxl 的性能在 windows 虚拟机里面就是强,毫无卡顿,但 RHEL9 及其衍生版开始移除了 spice 协议的软件,无 qxl 可用。但 AlmaLinux 10 会重启 spice 功能。Debian 带有 spice 和 qxl 。Arch 和 Fedora 也带有,就想不明白为什么 RHEL9 系开始就没有。
3 、本人 Linux 使用经历,但不是很深的那种经验,Ubuntu(1 年) Fedora(2 年) -> Almalinux(2 年) -> Debian(1 年) -> Arch(没有,但后续将大大折腾这个发行版)
4 、目前使用 debian 不习惯的地方,包管理 dnf history 功能还是放不下 Debian 系是 apt 倒也没有不好用就这个功能没有找到替代。防火墙 firewalld 用得惯、iptables 也能用,Debian 也可以选择 ufw 和 iptables ,ufw 用不惯,但现在有了 nftables ,后续学习 nftables 才是上上之选。另外就是配置文件的位置,debian 和 rhel 都针对上游软件挪来挪去,可能是 rhel 系用惯了,老是找 rhel 里面的文件路径。

RockyLinux 9 使用 spice 方案: forums.rockylinux.org/t/spice-support-was-dropped-in-rhel-9/6753
AlmaLinux 10 将使用 spice: wiki.almalinux.org/alesco/meeting-minutes/2024-08-21.html

Arch 8 年路过

arch 开发机、debian 服务器

arch 开发机我认可,Debian 服务器比 RHEL 系的优势是啥?遵循全部开源并且崇尚自由这个亮点吗?但用起来 apt 和 ufw 这两个命令没有 dnf 和 firewalld 封装的方便,RHEL 系就是用着容易变成 CentOS Stream 这种,且目前 rhel9 系没有 qxl

我一直不太理解,为什么大家喜欢 arch 呢?滚动更新不稳定啊,开发机应该追求环境稳定?

java 码农场景用了一年多了, 还没发现不稳定.

完全理解,但是用更稳定的发行版不好吗,一直跟最新提不了多少性能,出问题反而要头疼了。

debian 一个坑点是不提供调试用的源码包。这个还是用了好久才发现的。

wiki.debian.org/Debuginfod

You've just discovered one of the limitations of Debian's debugging experience. To be clear, this is not related to debuginfod: this happens because Debian doesn't package the patched source tree in a consumable way for debugging tools to use.
fedora 就提供。

固定版本意味着出问题不一定马上得到更新,滚动发行版可以很快就随着更新直接修了。比如前段时间 openssh/xz 这些出问题,arch 都是爆出来当天就能推带修正的更新,算上镜像站同步需要的时间的话睡一觉起来就够了。固定版本的发行版的话应该是会相对更慢拿到更新。 不过也许因为自带的那些软件过于古老而不被影响也说不定。
另外 arch 虽然是滚动更新,但绝大多数时候使用的是上游发布的稳定版源码,仓库也都有 testing 版本以用来在大规模推送前进行测试。

还可以用 zfs/btrfs 之类的带 snapshot 功能的文件系统做好备份,滚出问题也方便回滚,问题不大

固定版本意味着出问题不一定马上得到更新,滚动发行版可以很快就随着更新直接修了。
这是错的,debian/ubuntu 对于安全漏洞还是会及时提供更新的,但如果是小 bug 就不会去修。

滚动发行版最大的问题就是在于没有一个稳定的版本能长期保持。至少经常从 arch 用户口中听到的,如果长期不更新版本,再更新就会出问题。

一直更新,注定会带来不稳定,就跟软件一旦复杂起来必定会有 bug 一样,这种事情是必然的,不是说上游经过测试就可以避免。对个人使用来说也许还算小问题,但是对服务器来说就很麻烦了。

现在不清楚是什么情况,十来年前同一台笔记本,arch + kde 体感比 Ubuntu 流畅很多。可能是 arch 自带的服务比 Ubuntu 少。另外 arch wiki 也是真不错。

包管理 dnf history 功能还是放不下 Debian 系是 apt 倒也没有不好用就这个功能没有找到替代
可以手动看 var/log/dpkg.log 或者 var/log/history.log (打出全路径 V2EX 会 block ,所以只能打相对路径了)

个人用问题不大,经常升级有小毛病也好修一些,选 Ubuntu 那种大版本升级也是个考验。

最近在用 fedora+xfce ,感觉比 debian+kde 更舒服

“如果长期不更新版本,再更新就会出问题” 已经是误解了,最近几年的 arch 半年滚一次都不会出问题

经常升级有小毛病也好修一些,选 Ubuntu 那种大版本升级也是个考验。
问题在于,能否预料到问题的出现。debian/ubuntu 大版本更新,是可以预料的。你可以提前做好更新的准备,再执行大版本更新的命令,出问题后再进行修复。

但使用滚动发行版,意味着你没有这个选项,为了系统不再过段时间之后突然出什么问题,你必须得一直更新。而你一直更新,就容易出现某次服务突然启动不了。

可是,这是可以预料的吗?或者说可以保证的吗?只要没有保证半年更新一次一定不会出问题,那么用户的选择就只有一直保持更新。

#4 我自己主要是离不开 aur

服务器 debian, 桌面 arch.

服务器除了安全漏洞, 一般不动它, 服务都跑在 docker 里

桌面用 arch 则是因为 arch 的 wiki 丰富, aur 上的应用丰富, 更新快.
arch 更新出问题没啥, 有问题大伙都一样, 上社区找解决方案就好了.
怕就怕有些软件依赖一些新版本的库, 结果你的发行版远远落后, 依赖一堆问题装不上.
很多安装的问题, 在 aur 的打包中就默默解决了

哪来这么多乱七八糟的事情,爱用啥用啥,你自己舒服就行了。别人喜欢的未必适合你,你的选择也未必适合别人。

我自己用 Fedora 41 ,偶尔也用 Ubuntu 24.04 ,其他人的说法都当是放屁即可。

桌面和服务器都是 arch ,好用

最近刚好也在学习虚拟机使用,我也觉得 libvirt 相关的工具都挺不简单的,不过毕竟有 gui 工具,配置起来还是比 cli 直观。 话说 op 每次开虚拟机都要用命令开嘛?

桌面用 Fedora Silverblue 配合 Flatpak 和 Podman 容器, 都开自动更新
服务器用 RHEL 或衍生

就用 debian ,centos 之流的不够闹心的

不同的 linux ,其实就是管理方式不一样而已,大部分软件都差不多,选择哪个版本看自己用的舒服就好。
debian 稳定,但是软件比较旧,适合服务器,免费又稳定,为什么不用呢? rhel 虽然是最牛逼的,但毕竟是商业版本,适合大公司使用。
fedora ,tumbleweed ,arch 传统的 linux ,当桌面不错,软件毕竟新。
Silverblue 之类容器化的系统,网上也有第三方的 Universal Blue ,帮你配置好系统了,软件用 flatpak ,也很适合当桌面使用。
nixos 和 guix ,都是用配置文件管理系统的,非常有特色,有了配置文件,完全可以在任何电脑上安装出和目前使用的一模一样的系统,而且是符合自己需求的配置好的系统,非常好玩,系统可以随便折腾不会崩溃,建议可以尝试一下。

我用 fedora

目前用 oracle linux 。支持 btrfs yum.oracle.com 更新也快

写 shell 脚本来简化重复输入命令

可以试试 vagrant ,安装 libvirt 插件即可。 github.com/vagrant-libvirt/vagrant-libvirt

我用过 ubuntu -> fedora -> Arch -> Manjaro -> Arch ,目前 Arch 用了大概三年左右了,不怕折腾一点推荐 Arch ,官方仓库+aur+arch4edu+其他一些仓库,我自己是几乎没有遇到装不上的东西,当然像我有时候会用一些依赖很老旧的软件(例如依旧依赖 Jasper1 的 WRF 数值模式),就只好自己手动编译了。

明白你提到的点

好嘞,感谢你分享见解

写好 shell 脚本,要开机自启可以 systemctl 服务启动的方式
可以参考这个链接 wiki.archlinux.org/title/QEMU#Starting_QEMU_virtual_machines_on_boot

大家都在讨论发行版本,有没有人说一下 QXL, spice, PVE 啊

我能分享的是,RHEL9/AlmaLinux9/RockyLinux9 系都无 spice ,PVE 貌似是 web 管理的进阶版的 virt-manager 。备份和迁移是有不同方式的,VM 的硬盘文件+VM 的虚拟机配置,硬盘文件怎么备份都行,虚拟机配置的备份,图形化的方式就不那么好备份,例如 virt-manager ,如果系统重装后,要重新导入虚拟机配置,得一个一个设置属性再配一遍;用脚本或者配置文件的方式就可以不用重复配来配去。

另外,QXL 的性能是很强的,配合 spice 贼丝滑,个人体验丝滑效果比 virtio 显示驱动+spice 更佳

龟壳公司风评很不好喔,OracleLinux 的优势是啥,默认带 btrfs ?仓库更新快慢倒不是关键问题

#4 我也用 arch+kde 两年了,不在公司生产环境,我就无所谓;好处是不用像 win 那样,没事风扇就莫名其妙的转起来,因为这个软件是真的按需装的,但是不怎么推荐给别人,还是需要一定技术能力的,对于开发者来说也算是学习 linux 相关知识了,挺好的

开发机用途么?有无个人服务器用途的呢,用的啥发行版呢?

pacman 太好用了 555

Flatpak 我知道,Podman 比 docker 有啥更 nice 的地方吗?
另外,服务器你选择 RHEL 系是为了保持各发行版使用习惯统一呢还是因为对 RHEL 系比较熟悉?

服务器是一般不动它是个好习惯,apt update 也不执行吗?
服务器选 debian 的出发点是啥,纯正开源血统 还是 用习惯了 debian 还是 觉得 RHEL 系不靠谱变来变去 Stream ?

好的,感谢你的建议,可以例举一些闹心的点么?毕竟借鉴他人的经验也是一种学习的方式

我刚开始使用 KVM 虚拟化的时候也是 gui 工具开始,virt-manager 这个工具,但后面感觉在 linux 这边,始终还得 cli 才靠谱,毕竟 cli 可以重复执行,gui 操作得在笔记里面记下操作步骤不然又忘记了。另外我阅读了下 libvirt 相关工具包的文档,virt-install 、virsh 、domain.xml 都很复杂,选项和文档规模加起来都要 qemu 的 3 倍了。另外就是我一直没琢磨明白 libvirt 的网络配置是怎么给我配上的,firewalld 里面就没看到它的规则,libvirt 配置目录下也没找到,封装的很抽象,可能我脑力不够实在琢磨不透

我家里那台台式就是装的 archlinux ,一个月没更新,结果再更新就滚挂了,折腾了一天才搞好,又是换源又是装 makepkg 又是搞 aur 什么的,麻烦的要死,Debian 跟 Ubuntu 就没有这种问题,而且 archlinux 的中文 wiki 里面,充斥着各种瞧不起新人的语句,上来就一句:"你应该知道你在做的是什么","不建议蠢的人这样搞","建议先了解一下","你不适合 archlinux",等之类的。真不知道那些经常给别人推 archlinux 的,都是些什么人?难道是收了钱的?

可以考虑 debian sid ,testing ,stable 搭配使用

深度其实蛮好的

个人开发是 Arch ,服务器用的 debian ,基本上在 Arch wiki 上能解决 90%的问题,剩余的 10%在社区提问也能解决

Arch Linux 本身的定位也不是给小白用的,开箱即用就用 Ubuntu 或者其他带 de 的桌面就好了。这几年 Arch 还特意提供了可视化安装脚本,以前都是命令行安装。滚动更新现在社区一年也见不到几个滚挂的帖子,你就用你的个例来抨击滚动更新也太牵强了

#36

咋说呢。系统个人觉得还是可以的。oci 只能用 OC (免费)附送的 ksplice 用的也很不错。兼容 RHEL 的同时还能 ABI 兼容一些其他三方包。uek 内核也相对 rhca 来说也跟新一点。

我估计 16 年 arch ,08 年到现在,全天使用。除了打游戏换 win