服务器使用debian还是ubuntu?

2024年12月12日 作者 unix2go

客观说,这两个系统我都在用,在我的系统里,它们占比各一半。如下信息展示服务器版本。

$ lsb_release -cd
Description:	Ubuntu 22.04.5 LTS
Codename:	jammy

$ lsb_release -cd
No LSB modules are available.
Description:	Debian GNU/Linux 12 (bookworm)
Codename:	bookworm

如上所示,我主要使用ubuntu 22.04和debian 12。

作为服务器操作系统来说,debian和ubuntu都挺合适的。而ubuntu是基于debian发行的,因此两者体系架构差别不大。哪个更合适你,我觉得还是看个人习惯。有的同学ubuntu用惯了,估计就会选择ubuntu。有的同学是debian死忠,那就毫无疑问debian。

如果两者都没有用过,作为新手,我推荐debian多一点。无他,debian更轻量化一些,发行版本也更稳定。ubuntu版本发的太快,一年一个版本,让人目不暇接。

两者使用上虽然没有大的区别,但是包管理还是有所不同。比如,debian已经默认没有mysql的apt源了,要添加外部的源才能安装mysql服务器。而ubuntu还是保留mysql源的。再比如,ubuntu不能通过apt安装certbot,而要通过snap去安装,最近的ubuntu都默认自带了snapd守护程序。而debian文化是反snap的,它的apt就可以安装certbot。

debian 12还有个重大不同是没有明文日志了,日志都打到systemd journal里。比如查看mysql日志,要运行如下命令。

$ sudo journalctl -xeu mysql
░░ Subject: A start job for unit mysql.service has finished successfully
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░ 
░░ A start job for unit mysql.service has finished successfully.
░░ 
░░ The job identifier is 1929.
Nov 29 02:34:07 mgw.xyamail.com systemd[1]: Stopping mysql.service - MySQL Community Server...

如果在debian 12里开启明文日志,你需要运行apt install rsyslog来安装并激活rsyslog程序,日志才会打到/var/log的传统日志里。然而ubuntu并没有遵循这个设置,依旧是明文日志。

ubuntu更庞大一些,对新手的友好度强一些。它的命令行有错误提示,如下所示。

$ lsb-release
Command 'lsb-release' not found, did you mean:
  command 'lsb_release' from deb lsb-release (11.1.0ubuntu4)
Try: apt install <deb name>

debian的命令输错了,没有相关提示。如下所示。

$ lsb-release
-bash: lsb-release: command not found

最后说到社区文化,debian比ubuntu强太多了。debian是个很老的系统,比它更老的似乎只有slackware。加上debian起源于欧洲,接近Linus的故乡芬兰,因此debian在欧洲相当受欢迎,社区也很活跃和庞大。对比起来ubuntu的社区冷清多了。如果你有问题在debian邮件列表提问,几乎立刻就能得到各路高手的解答,这点挺方便的。

如果问我个人的喜好,我还是喜欢debian多一点。原因无外乎就是更轻量、更稳重、社区更活跃。debian的使用友好度没有ubuntu好,对于纯新手来说,也许ubuntu更适合你。