站在开发角度,CentOS和ubuntu的区别

:-}

Linux的发行版

Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL的社区克隆版本,免费)。Redhat应该说是在国内使用人群最多的Linux版本,甚至有人将Redhat等同于Linux,而有些老鸟更是只用这一个版本的Linux。所以这个版本的特点就是使用人群数量大,资料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。

Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范的Linux系统。Debian最早由Ian Murdock于1993年创建,分为三个版本分支(branch): stable, testing 和 unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经 过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable一般只用于服务器,上面的软件包大部分都比较过时,但是 稳定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。Debian的资 料也很丰富,有很多支持的社区,有问题求教也有地方可去:)

作为服务器系统的特点

CentOS,其实是Redhat的内核,更成熟稳定一点,相比旧Redhat,多了一个yum的命令,学Debian一样自动安装软件;CentOS的可以Yum的东西相比Debian或Ubuntu实在太少了;CentOS介于年轻与成熟之间,它比Ubuntu更注重安全性,默认一装好就自带并打开防火墙就知道;SELinux让不同的程序之间权限有所限制,是CentOS一些软件经常莫名奇妙地提醒“没有权限”的一个原因。

Ubuntu,就是Debian的延续版,apt-get自动安装、更新软件的方式,是Debian首创。相比起来apt-get软件库及源强大很多,也多很多,我们的服务器除了一个magickWand(imageMagick的PHP API),其它东西全部都是apt-get下来的,安装不需要一分钟;感觉Ubuntu更加自由,小巧,灵活,有点年轻人的感觉。

对开发者的友好程度

如果公司没有专业的运维来管理服务器,由开发者来管理,ubuntu更适合。
如果公司的项目商业化很大,centos具备更安全可靠的特性,是必经之路。