http://www.lupaworld.com/viewnews-122138.html
网友观点:Debian之惑
发布时间: 2009-03-13 17:18 作者: 王旭 来源: 移动labs 版权申明 向LUPA投递新闻
也不记得用了几年Debian了,反正自己03年开始写的Debian的书就要上市了,Potato基本没怎么用过,从 Woody 还是 testing 到 Sarge,然后是 Etch,最近的就是 Lenny ,现在 Sqeeze 是新的 Testing 了,见证了 Debian 这么久的路,我想我还是有点评论的资本的。
一直以来,Debian 以稳定和平滑升级而被众多的拥护者所追捧。Sarge 的 Debian-Installer 之前,Debian 曾经以安装的艰苦而著称,如今,那些艰苦都已经成为过去了,可 Debian 所面临的挑战却更大了。
一个开源项目,它的根本性格和命运都是由孕育它的社区所决定的,维持开源项目的生命力的关键也是让它的社区健康发展,这也就是最近流行的所谓 "ecosystem"论。拥有上千开发者和不计其数用户的Debian,因为其自由、法制和民主,无疑曾是最健康和富有活力的开源社区之一,不过,最近 却也面临着社区萎缩的危险。
很多人会把问题归咎于Ubuntu,是的,Ubuntu源于Debian,没有Ubuntu的话,很多新 手可能会选择Debian的。可是,我觉得实际上Ubuntu的出现只是将Debian已有的一些问题暴露了出来,而并没有真的伤害Debian。首先, 选择Ubuntu的大部分新手,如果真的会选择一个Linux Distro的话,也会选择 RH/Fedora 、Mandrava 或 OpenSuSE 这样的版本,而 Ubuntu 大量派发的光盘和高曝光度让很多用户熟悉了 APT 系统,这反而让他们将来可能会选择 Debian。另一方面,Ubuntu 的很多得到资助的开发者同时也会服务于 Debian,因为同时为 Debian 和 Ubuntu 打包的难度并不大,而这些开发者本身也大多是源于 Debian 社区,对 Debian 有传统好感的。因此,Debian 如果有什么不测的话,Ubuntu 绝对不会是罪魁祸首。
不考虑 Debian 开发者的问题,单从用户角度看,个人觉得,Debian 在它的 Release 方式方面是有一些不爽的地方的――
首先简要介绍一下 Debian 的 release 周期的工作方式:Debian 有 unstable (codename: sid), testing (当前codename: squeeze),和 stable (当前 codename: lenny) 三个平行的发布版,每个都是完整的,可以直接拿来用。
每个软件包都由一个开发者(或小组)维护(目前大概有一千个开发者维护一两万个 软件包),这个软件包在三个发布版中的哪个的包都由这同一个开发者来维护。每当上游有新版本,或开发者自己修正 bug 之后,他都会将这个软件包送入Debian仓库,确认无误的情况下会进入 unstable,也就是说只要开发者工作迅速,unstable 的用户总可以用到最新最酷的软件,当然,代价是用户要面临最新出炉的bug,事实证明,debian unstable中的bug其实也不是很多。
如果一个软件包在 unstable 中待了足够长时间没有bug,又没有什么依赖关系的羁绊,那么它就毕业进入 testing 了。unstable 相当于一个新软件包的仓库,它关心的是软件升级和bug。但testing不同,testing的目的是将来成为stable,因此 testing 追求的是整体上的功能目标和整体上没有严重bug,当 testing 已经具备了预先商定的功能,又控制住了整体bug的数量时,testing 就会被复制一份成为新的 stable了,原有的 stable 变为 oldstable,而 testing 也要获得一个新的 codename 了,刚刚发生过的一次更替就是 lenny 取代 etch 成为 stable,新的 testing 被命名为 squeeze。
按理说上面这个过程天衣无缝,不论是软件包还是发布版整体,都能达到一个相当稳定的程度,可以达到既定的平滑升级与稳定运行的目标,是理想的发布版。但是正是这个过程,存在着一些让人挺痛苦的问题:
首先是不可预知的发布周期:如果Debian的一个版本跳票一两个月,那简直值得我们去庆祝一下了,Debian的大部分版本迟到都在半年以上,差不多 两年的也不是没有,为了达到一个可以release的目标,常常要耗费很长时间,相比于Ubuntu这样的固定每年发布两个版本的系统,Debian的稳 定恰恰成了它让人望而却步的死穴。
正是最后临近发布的这段时间,很多升级都被freeze了,大家忙着抓虫除错,让sid很难得到最 新的软件,很多期盼新版本的人实际是期盼新版本快点发布,好让新版本软件可以快点进入sid来。而每当一个stable release之后,大量新的更新涌入也让这段时间成为了致命bug的高发时段,这样,对于大量求新的桌面用户,无法从stable的发布中获益,反而受 到挺大冲击,这就成了Debian的又一个梦魇。
此外 Debian 需要支持包括 x86, ppc, ia64, mips, arm 等这些不同的硬件架构并同期发布新版本,这也为其debug带来了很多困难,相比之下,ubuntu们舍弃了很多,也换来了轻快。
实际上,Debian最好能一方面不考虑release的正常的平滑更新,这正式大多数桌面用户所需要的,另一方面,又能在一定时间点分支出一个分支, 进行除错和稳定化,退出面向关键应用的更稳定的版本,没有必要分成三个发布版。但是,这样对于由志愿者组成的Debian是很困难的,要知道,业余时间就 算是写个这么长的blog都挺累的,更何况让这些志愿者们同时维护相差甚远的两个版本,并按时保质保量的发布呢。这大概也就是前DPL要引入一些商业资助 的原因吧。
稳定和平滑,确实是有矛盾的,Debian平滑运行了16年,我们拭目以待debian如何解决它面临的问题吧。

没有评论:
发表评论