关于几个 BSD 发行版......

它们的发展现状如何?


这些发行版中,哪一个(相较于其他的 BSD 发行版)更适合

  1. 日常使用?
  2. 开发?
  3. 体验 Unix 哲学?

另外,我注意到 NetBSD 好像还在使用 GCC 作为默认编译器,而 FreeBSD 和 OpenBSD 已经默认上 Clang 了。

c++ 命令的 manual page:

N 卡只有给 FreeBSD 提供比较新的驱动,要靠 Linux 模拟层才能用 CUDA,不然就得用 OpenCL 而且配置也同样不容易

NetBSD 和 OpenBSD 都只能用老一点的集成显卡或者亮机卡

只有手头上的是服务器硬件才值得考虑装这些系统,DragonflyBSD 也同理。要不然就是专门照着他们支持的硬件装机,如果是笔记本那得是专门去买比较老的硬件了。

如果是树莓派的话,最新的 9front 已经移植了 Linux 的闭源 boardcom 无线网卡驱动,BSD 目前完全没有对跑 Linux 闭源网卡驱动的支持。(尴尬的是我去年买的 Pi zero 2W 已经亮不起屏幕了)

GCC 现在编译速度反而比 Clang 快,只有 FreeBSD 和 OpenBSD 刚开始用 Clang 那会才有编译速度快和内存占用少的优势。NetBSD 因为 pkgsrc 同时要支持 Linux 默认一直是 GCC,当然其实也是可以用 Clang 编译的。

想体验正宗 Unix,装个 plan9ports 或者 heirloom 就行了,Plan9 和 Solaris 这两个才是源码继承自 Unix,BSD 的代码和 Unix 早就没啥关系了。

2 个赞

马太效应在操作系统领域的生动体现,硬件支持是 BSD 永远的痛处。 :melting_face:

看来 RISC-V 是 BSD 最后的希望了,这条新赛道如果也没把握住,以后或许我们就只能通过历史、许可协议、OpenSSL 以及怀旧社区来认识 BSD 了。

说明 Linux 不用 GPLv3 没法进一步对开源世界其他 OS 项目作出贡献,缺少开源驱动同样也是 Linux 的毛病

这可不好说,9front 就是纯靠社区在原作者都放弃它的情况下打赢复活赛的,要不然 Plan9 就只剩下 9pfs 了。

顺带树莓pi网卡支持就是因为能适配 plan9 的硬件少到很多人基本选择树莓派,才有功夫整出来的

BSD 要适配的平台太多了,就没人有功夫整这个活

FreeBSD 基本可以日常使用,有几个基于 FreeBSD 做的桌面发行版,但还是建议你用 Linux 带桌面,一是硬件驱动问题,二是 FreeBSD 在开源世界已经是二等公民了,你遇到的问题、解决不了的问题会多很多。

NetBSD 的 Unix 味道很重,可以体验下,它用 GCC 除了 pkgsrc 可能还有一个原因是 GCC 对嵌入式设备的支持比 Clang 好。

OpenBSD 很 geek,如果你是精简主义者,应该会非常喜欢它,9front 那帮人就很推崇 OpenBSD。

DragonflyBSD 开发人力不足,有倒闭风险,可惜了好想法,但工程就是工程,需要足够人力打磨。

最好的用法: 用 Linux,然后 gnome box or virtualbox 体验几个 BSD。 如果一定要用 BSD 做桌面——我觉得还是算了吧,既然你都这么问了,说明你动手能力不足,这点事你安装试试就知道了😂

btw,FreeBSD 和 NetBSD 官方有二进制包,跟源码包会版本不一致,软件包管理比 Linux 差很多,没办法,就那么点人力。

最后,Chimera Linux 可以关注下,这是最 BSD 味的 Linux 发行版了,Alpine Linux 的头号打包者 Alice 就叛逃到 Chimera 了,最近刚被提拔为 Chimera Linux 项目的 co-owner。

1 个赞

可不可以认为是:反正 BSD 已经赶不上 Linux 了,还不如认命自己就是一个冷门系统,放弃多平台的支持,以确保对一个平台(尽可能)最好的支持? :cold_sweat:

为啥要放弃,开源项目反正是用户在做支持的,在用的人有技术能力就能支持,没能力也可以出钱嘛

1 个赞

musl userland 很多东西默认链接 glibc 都没法下 binary 来跑,FreeBSD 都能跑 miniconda 而 musl Linux 就跑不了。很多复杂点的软件都没做构建支持(比如 FriCAS),甚至打包的软件都没 BSD 系多

1 个赞

坏消息是,英伟达的问题就算有钱有人也无能为力,要不然 Linus 也就不会公众场合“So(wu) Nvidia(neng) F**k(kuang) You(nu)”了。:disappointed_relieved:

flatpak 可以解决 glibc binary 问题,用个 nixpkg 或者 pkgsrc 也不是不可以 :grinning:

Alpine edge 1w包,Void 8000, Chimera 还没成气候,得从 Alpine 和 Void 里抄。

1 个赞

已经改了,开源 gpu 驱动了,以后以开源驱动为主,没开源用户空间的,这已经很好了。

1 个赞

英伟达 GPU 接口已经开源了,自己重头写一遍适应 gpu 就能用了

1 个赞

Turing 架构往后,都用闭源固件实现功能了才把接口开源了,之前的架构还是保持不开源。甚至这个固件还要签名了以后才能跑。

1 个赞

所以我说的是接口开源嘛。嗯嗯,是这样的

我使用 freebsd 很多年了,好像是从 4.5 版本开始到现在一直做桌面系统,现在我使用 thinkpad t480,好好的。

我觉得使用这东西,千万不要化身测试员、测试这个测试那个,除非有大把时间,我们只要关注工作即可,比如我用 fvwm ,这么多年,配置文件一直没变过。

去年刚了解到bsd的时候稍微了解了一下,个人还是比较喜欢netbsd的跨平台理念。后来用笔记尝试了一下netbsd的,发现wifi跑不起来,显卡分辨率调节也不行,尝试解决无果,后来换了freebsd正常了,但声卡不行。但只是玩似乎没啥毛病。 i5 10代的集显cpu。 freebsd确实兼容性要好不少。

当时是还看中了和gentoo 一样提供源码自定义构建,也提供二进制包。不过发现netbsd的pkgsrc构建好像不依赖已有的二进制包。freebsd好像可以,没仔细看过。 netbsd是可以单独安装系统的调试符号的,freebsd没注意看过。

后来试了netbsd10看有没有添加支持,毕竟9.3到10开发就用了3年。结果没有。如果wifi和显卡支持得好就用netbsd了。

后面硬件支持了,估计还是netbsd, 实在太对我个人xp了。

还有一个原因就是协议了,gpl的传染性确实太强了,个人(叠甲)更强倾向bsd和mit等。

另外netbsd对各种树莓派嵌入式设备支持的比较好。 像香橙派5都是官方支持列表里面的。

不折腾的话有支持硬件是最基础的,此外便是文档,gui能显示正常,能调个亮度啥的就行。 对文档来说openbsd没了解过, freebsd比netbsd要完善一点,netbsd也能用,大部分都能找到解决方案。最为关键的是freebsd有论坛,搜问题经常会遇到。

我用 FreeBSD 主要用于小服务器(一块 NanoPi R2S),开箱即用,常见服务软件包还比较全,实在没有的用 Linux 兼容层