个人观点
CentOS
生产环境首选,稳定性好,占用的存储空间小,启动关闭快。
大部分软件的文档都会提供 CentOS 的安装说明。
缺点是包源太老太少,导致很多工具都需要编译安装。万年自带 python2...(安装 python3 推荐使用 miniconda3)
专门用来跑 Docker 的话挺好的,很稳定。但是日常使用起来不是很顺手,这也和我最初是从 Ubuntu 上手的 Linux 有关。
主要是国内各云厂商,默认都搞的 CentOS,现在又啥都要上云。沿用 CentOS 是坑最少的方案。
Ubuntu
个人开发环境首选,包源更新快,稳定性也不错,系统占用的存储会比 CentOS 大一些,CPU/Mem 也会占用多一些,但是日常使用更舒心。
包源丰富,更新及时(相比 CentOS/Debian,不和 Arch 比),比如 Python3 一般只比官方最新版低一个大版本。
大部分软件的文档都会提供 Ubuntu(或 Ubuntu/Debian) 的安装说明。
测试环境的话还是尽量和生产环境一致。
Ubuntu Server 版自带 vim/git/wget/curl/python3 等,开箱体验比 CentOS 更好。但就我目前的使用体验来看,坑好像比 CentOS 更多一点:
- 导出的 OVA 虚拟机镜像比 CentOS 的大不少。只装一个 docker/docker-compose 的情况下,CentOS 的 ova 只有 900M,而 Ubuntu 有 1.8G。。。
- 关机时可能会等待两三分钟。。参见 「Bug」VMware 虚拟机的关机测试中,Ubuntu 明显比 CentOS 慢
更新快,软件丰富,开箱即用,确实是有代价的。
Debian/Alpine
制作 Docker 镜像首选,目前大部分热门项目的 Docker 镜像的默认 OS 都是 Debian/Alpine.
Debian 用做虚拟机/物理机 OS 的文档相比 Ubuntu/CentOS 要少,可能也因此用的人少些。
Debian 官方源中的 Python3 一般比 Ubuntu 低一个大版本号。
redhat 好像在发力新一代容器构建工具 buildah,未来会如何?目前还不好猜。
RedHat/Canonical两家公司
redhat(CentOS) 和 Canonical(Ubuntu) 两家公司目前都在 Cloud 上火热发展,两家公司都在积极发展 Kubernetes 云原生和边缘计算。
而在 OS 上,这两家的 Server OS 应用都非常广泛,不过 RedHat 一开始就是面向企业,因此更有优势。从开源工具上看 RedHat 也要比 Canonical 更胜一筹。
k8s 生态圈的很多热门组件都是从 RedHat 生态中发展出来的,包括 flannel、prometheus-operato,以及有望替换 Docker 的 podman+buildah,另有 Kubernetes 发行版 Openshift
Manjaro/Arch/Deepin
适合作为个人桌面使用,arch 系的 yay 超舒心,deepin 国产骄傲。
其他
适合折腾用?其他的没怎么接触过,感觉都很折腾。