Linux 发行版的选用(服务器和个人桌面)
个人观点
CentOS
CentOS 已经宣布不再维护,有人建议换成 OpenSUSE
生产环境首选,稳定性好,占用的存储空间小,启动关闭快。
大部分软件的文档都会提供 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,未来会如何?目前还不好猜。
OpenSUSE
OpenSUSE 基于企业版 SUSE,它和 CentOS 一样,也是用的 rpm 作为软件包格式,但是它提供了独特的 zypper 作为包管理器,用着感觉比 yum 舒心,而且包源新很多。
国内有华为腾讯以及很多银行,都有在使用商业版的 SUSE 作为 Linux 服务器,所以拿 OpenSUSE 做服务器也是有一定落地基础的。
个人目前很喜欢 OpenSUSE.
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 国产骄傲。
其他
适合折腾用?其他的没怎么接触过,感觉都很折腾。