|
发表于 2005-1-20 22:04:33
|
显示全部楼层
tr:为什么我频繁进行系统更新?(因为我用的是 Debian 和 apt-get !)
NewsForge
The Online Newspaper for Linux and Open Source
http://os.newsforge.com/
Title Why I do upgrade my Linux systems frequently
Date 2005.01.14 13:00
Author Andreas Neudecker
Topic
http://os.newsforge.com/article.pl?sid=05/01/11/0129210
转载并翻译自 NewsForge 网站,译文遵循 GNU FDL,仅正文部分可自由修改,重发布时正文之外的部分必须同时原样发布。译者对未告知作者表示歉意,但对误读的后果表示不负责。
为什么我频繁进行系统更新?
(作者 Andreas Neudecker)
正文开始
最近 Nathan Willis 在他的文章 Why I won't upgrade my Linux distribution (为什么我不升级我的 linux 系统,http://os.newsforge.com/article.pl?sid=04/12/14/152237&tid=2 ) 中提到,不应频繁升级基于 linux 的系统,其中有很多原因。但是他讲到的只是众所周知的 RPM 地狱 (RPM Hell, http://www.germane-software.com/%7Eser/Files/Essays/RPM_Hell.html ),以及基于 RPM 的发行版的不完美的打包(? fragmentation)。不属于系统一部分的软件包在系统升级时很容易被破坏。发行版的一部分甚至会因为升级而无法工作。但是基于 RPM 的发行版并不是 Linux 的全部。
有很多原因,来解释为什么 linux 系统应当频繁更新,安全问题是最重要的。尽管我们 linux 用户不会经常受到病毒侵扰,但还是会遇到入侵,root kits 类工具,以及诸如此类的破坏行为。不更新系统就意味着冒险。
其他的原因,可能仅仅因为你最喜欢的软件包添加了你最需要的完美的新功能,还可能因为你是一个怪客,如果系统所有组件不是最新的版本就睡不着觉。
那么,有没有办法来保持更新,而不会遇到依赖性问题,也不会破坏第三方软件包呢?
Debian,一个聪明的发行版
大约三年前,一位使用 Debian Linux (http://www.debian.org/ ) 的朋友向我介绍了 Debian 的高级包管理工具 (Advanced Package Tool, APT, http://www.debian.org/doc/manuals/apt-howto/index.en.html ) 的优点。它可以极好地处理依赖性问题,将你从 RPM Hell 固有的困境中解脱出来。
那时我用基于 RPM 的 SuSE Linux,遇到了好多升级相关的问题,我经常不得不为此而重装系统。安装不属于这个发行版一部分的软件包时总是会出错。通常,我得到处去搜索所依赖的软件包。有时它甚至会将一些系统功能禁用。
我极其想尝试一些新东西,于是就在我的老 486 上安装了 Debian。安装并不容易,但是并非不可忍受。安装过程让我想起我最早安装的发行版,那是非常老的一版 Slackware,内核是 1.2
如今我在好多机器上都安装了 Debian。最早的一台是 Debian 2.2 (Potato,这个昵称的来源是电影《Toy Story》中的一个角色,http://lists.debian.org/debian-user/1995/11/msg00325.html , http://www.toystory.com/ ),我经常更新系统,甚至将整个系统升级,但是很少遇到问题。如果是很小的更新,那么我通常在工作的同时升级系统。如果是比较大的升级,尤其是牵涉到 X 图形系统的时候,我就在命令行运行升级——尽管这不是必要的,只是为了保险而已。
我升级到了 Debian 3.0 (Woody),当时它仍然处于 testing 分支 (测试阶段,http://www.debian.org/releases/ ),然后又升级到了 Debian 3.1 (Sarge),当时我想尝试最新版的 OpenOffice.org, mozilla 和 GNOME 以及一些其他程序。有时我会从 unstable 分支 (不稳定阶段) 安装软件,可以安装一些非常新的东东,例如 Gaim 和 Inkscape (一个奇妙的 SVG 绘图工具, http://www.inkscape.org/ ) 的最新版本。
在 Debian 中可以修改升级过程,指定从特定分支安装特定软件包。利用 APT-Pinning 机制 (http://jaqque.sbih.org/kplug/apt-pinning.html ),可以定义应当从默认之外的某个分支安装的软件/软件组 (默认值当然是你的系统类型 stable, testing 还有 unstable)。
第三方软件
我仍然需要安装不包含在默认仓库中的一些软件。通常,这些软件提供 Debian 打包 (.deb) 下载。可以分别下载这些软件包,也可以将这个项目的地址添加到仓库列表中,将它看作发行版的一部分。如果没有 Debian 打包,那么我通常通过安装 RPM 来解决问题,需要用到 Alien 包转换工具 (自动将软件包从一种格式转换为另一种格式的工具,http://www.kitenet.net/programs/alien/ )。
其他情况下,我直接使用项目提供的二进制安装程序。例如 Adobe 的 Acrobat Reader,Sun 的 Java SDK,Macromedia 的 flash 播放器及插件,还有 RealPlayer。(这些软件包目前也有了 .deb 和 .rpm 供下载。)有些时候,我从源码直接编译,因为它值得我这么做。但是编译完成后,我总是用 checkinstall (http://asic-linux.com.mx/%7Eizto/checkinstall/ ) 来自动从编译结果生成一个 .deb 打包。这样简化了安装,卸载和升级,特别是在部署多个系统时。
一些看法
如果使用 Debian 的话,基本上,不需要冒险去安装商业软件或者稀奇古怪的软件。当前的稳定分支 Woody 包含多达 8700 个软件包,而在当前的 Sarge 分支的官方快照 DVD 中包含了超过 14800 个。
Nathan Willis 在他的文章中提到,不升级的原因包括系统升级后,对第三方软件的破坏带来的混乱。那么 Debian 是怎么处理这个问题的呢?
如果发行版的升级将一些库替换为新版,但是第三方软件并不能与新版一起工作,这时升级会破坏它。最简单的解决方案是只要可能,就使用软件的静态连接版本,例如 Opera
Debian 中的 Java 程序升级后,它们可能需要新版的 Java 环境。如果你用的是 Sun 的 Java 虚拟机,那么你需要下载很大的安装文件并手动进行安装。如果你没时间做这些,并且对新版本 Java 程序的特性不感兴趣,那么最简单的办法是不要升级它们。给它们加上 Debian 软件包数据库的限制,在自动升级时排除它们,以后何时升级由你决定。
从 RPM 地狱到 APT 天堂
对 Nathan Willis 和其他为升级困境而头疼的人,我的建议是使用基于 Debian 的发行版。下一次遇到系统升级将系统搞砸了的时候,如果不得不重装系统,那就是切换到 Debian 的最好时机。如果不在乎安装过程,就直接用 Debian 的官方安装程序。在 Sarge 中,新的安装程序已经非常易用了。
如果想要更好的安装感受,图形化的安装过程,简单的配置,那么可以使用各种商业的 Debian 衍生版本,包括 Libranet, Linspire, Ubuntu, Mepis 以及 Xandros。还有很多基于 Debian 的 liveCD 可以即时使用,不需要安装。你也许知道其中的 Knoppix,另外还有一个变种 Gnoppix (使用 GNOME 而不是 KDE),提供了一个图形化的安装程序,可以安装到硬盘。还有新的 UserLinux 项目,它的目标是由社区制作一个基于 Debian,适于商用的桌面发行版。
大多数衍生版本不使用 stable 分支,而是使用 testing 分支,也就是新软件在经历过初始 unstable 阶段后的状态。如果要使用 stable 分支,你仍然可以使用重要软件的由 Debian Backports (http://www.backports.org/ ) 提供的新版本。
控制 Debian 软件包的工具,在命令行下是 aptitude (http://aptitude.sourceforge.net/ ),而图形界面的程序是 Synaptic (http://www.nongnu.org/synaptic/ )。也有一些其他的商业衍生版本,有自己的图形界面工具。
即使你不想换成 Debian,也有一个值得推荐的解决办法:在你的基于 RPM 的系统中使用 apt。Connectiva 移植了 apt,并在自己的发行版中使用。freshrpms 有一篇概述,WebMo 有一篇文章,讲述如何为 redhat/fedora 创建 apt 仓库。
总而言之,如果你对自己升级系统的技术感到不满足,你可以选择。对我来说,Debian 的依赖性关系解决和简单的升级使它成了较好的选择。
正文结束
Andreas Neudecker has been earning a living by maintaining Windows networks for several years. Today he is a happy Linux convert and eagerly helps others migrate too. He is currently looking for writing job in IT or natural sciences.
Links
1. "Why I won't upgrade my Linux distribution" - http://os.newsforge.com/article.pl?sid=04/12/14/152237&tid=2
2. "RPM Hell" - http://www.germane-software.com/~ser/Files/Essays/RPM_Hell.html
3. "Debian Linux" - http://www.debian.org/
4. "Advanced Package Tool" - http://www.debian.org/doc/manuals/apt-howto/index.en.html
5. "nicknamed 'Potato'" - http://lists.debian.org/debian-user/1995/11/msg00325.html
6. "Toy Story" - http://www.toystory.com/
7. "Debian's thorough QA system" - http://www.debian.org/releases/
8. "OpenOffice.org" - http://www.openoffice.org/
9. "Mozilla" - http://www.mozilla.org/
10. "GNOME" - http://www.gnome.org/
11. "GAIM" - http://gaim.sourceforge.net/
12. "Inkscape" - http://www.inkscape.org/
13. "APT-Pinning" - http://jaqque.sbih.org/kplug/apt-pinning.html
14. "Alien package converter" - http://www.kitenet.net/programs/alien/
15. "checkinstall" - http://asic-linux.com.mx/~izto/checkinstall/
16. "8,700 packages" - http://www.debian.org/intro/about
17. "Opera" - http://www.opera.com/
18. "a lot smoother" - http://os.newsforge.com/article.pl?sid=04/12/23/2023223&tid=2
19. "new installer" - http://www.brunotorres.net/en/sargeslide
20. "Libranet" - http://www.libranet.com/
21. "Linspire" - http://www.linspire.com/
22. "Ubuntu Linux" - http://www.ubuntulinux.org/
23. "Mepis" - http://www.mepis.org/
24. "Xandros" - http://www.xandros.com/
25. "Knoppix" - http://www.knoppix.net/
26. "Gnoppix" - http://www.gnoppix.org/
27. "UserLinux" - http://www.userlinux.com/
28. "Debian Backports" - http://www.backports.org/
29. "aptitude" - http://aptitude.sourceforge.net/
30. "Synaptic" - http://www.nongnu.org/synaptic/
31. "Connectiva" - http://www.conectiva.com.br/
32. "Fresh RPMs" - http://freshrpms.net/apt/
33. "WebMo" - http://www.webmo.net/
34. "Creating a Red Hat Apt Repository" - http://www.webmo.net/support/apt_repository.html
© Copyright 2005 - NewsForge, All Rights Reserved
printed from NewsForge, Why I do upgrade my Linux systems frequently on 2005-01-18 14:12:52 |
|