Debian的软件包管家:dselect用法小结
2002 年 1 月 30 日 星期三 第一版dselect是debian发布中重要的软件包管理工具,功能非常强大,也有些复杂,初看起来可能不太容易掌握。其实,dselect的工作方式非常自然,象一个好的老师一样循循善诱,你只要按照dselect的提示,一步一步的走下去,就把软件包安装好了。好了,我们看看,dselect是如何指导我们轻松愉快的安装debian软件包的。
一、使用dselect安装软件包的步骤
一、使用dselect安装软件包的步骤
启动dselect,我们可以看到如下的界面:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/1.jpg[/myimg]
可以看到,dselect安装软件包经过了如下自然而完整的步骤:
确定安装介质。
根据确定的安装介质,更新可安装软件包数据库。
选择需要安装的软件包
安装
配置安装的软件包
删除不需要的软件包
退出
看起来,很讲究逻辑,是吧?你只要一步一步走下来就行了。
有人觉得dselect难用,大概也因为其操作方法不容易记住。其实,如果你熟悉vi和emacs中的一种,其中的一些键盘组合是相似的。比如在dselect的主界面中,可以通过i和j来选择不同的操作步骤(vi的处理方式),也可以通过^N和^P来移动光标(emacs的处理方式),当然也可以通过光标键移动光标了。
二、选择安装介质
dselect支持多种安装方式。当选择了[A]cess后,出现如下界面:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/2.jpg[/myimg]
上面的几种安装介质是自解释的。推荐使用apt方式,只要编辑/etc/apt/sources.list文件,您就可以享受apt给您带来的软件包维护的乐趣了:你只要设置了sources.list,其余的就让apt来做吧!
我的sources.list是这样的:
# See sources.list(5) for more information, especialy
# Remember that you can only use http, ftp or file URIs
# CDROMs are managed through the apt-cdrom tool.
deb http://http.us.debian.org/debian sid main contrib non-free
deb http://non-us.debian.org/debian-non-US sid/non-US main contrib non-free
#deb http://security.debian.org stable/updates main contrib non-free
# Uncomment if you want the apt-get source function to work
#deb-src http://http.us.debian.org/debian stable main contrib non-free
#deb-src http://non-us.debian.org/debian-non-US stable non-US
#deb cdrom:[Debian GNU/Linux 2.2 r4 _Potato_ - Official i386 Binary-1
(20011106)]/ unstable contrib main non-US/contrib non-US/main
#deb ftp://ftp.linuxforum.net/debian sid main contrib non-free
#deb ftp://ftp.linuxforum.net/debian-non-US sid/non-US main contrib non-free
三、更新可用软件包数据库
下一步,就是根据你选择的安装介质,更新可以安装的软件包列表数据库。这一步相当简单,一般只要按Enter就行了。比如选择使用apt来安装,dselect会自动去连接sources.list里面的debian镜像服务器,并读取服务器上的软件包列表数据。
如果出错了,比如使用apt安装时发生无法连接服务器错误,dselect会给出出错信息和一些建议,^_^,够友好的吧?然后,在你确认后dselect返回主界面,光标还是停在Update这一行上,表示刚刚进行的Update操作没有成功。这时,一般可以再尝试Update一次。如果经过多次尝试仍然无法成功,可能是服务器关闭了,那就换个镜像试试看,镜像服务器多着呢。
四、选择软件包
这是最复杂的一个步骤了。在这里,dselect要完成以下的功能:
选择需要安装或者删除的软件包
解决软件包间的相互依赖关系
解决所选软件包间的相互冲突
dselect的"智能"相当高,使用dselect,你只要简单的回答几个问题,上面的复杂问题就可以解决掉了,让我们看看一个典型的软件包的安装过程吧。
4.1帮助画面
按下Select后,要等一下(dselect在读取可用软件包列表),然后首先出现的是帮助画面。学会使用帮助很重要,所有的dselect操作方法都在帮助里面了。使用帮助的要领如下:
任何时候,可以按下?来启动帮助。
进入帮助后,通过"space"键退出帮助。
使用.键读取帮助的下一屏。
很简单吧?先浏览一下整个帮助的内容,总共不过5屏。
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/3.jpg[/myimg]
4.2 选择软件包
好了,我们按下"space"键退出帮助,进入选择软件包的界面。看起来有些复杂?解释一下。
4.2.1 预备知识:移动光标的方法
选择软件包的界面分为上下两部分。上半部分列出了可选用的软件包,下半部分给出了所选择的软件包的简单解释。
首先看一下上半部分。
注意到,debian的软件包的分类是用section来表示的,软件包都组织进不同的section里面。光标的移动方法在这里是个难点,^_^,看起来简单的事情,实际上还有些学问呢。不过,你要是熟悉vi,就简单多了。总结如下:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/4.jpg[/myimg]
每一个软件包占有一行,分别有如下的说明信息:
EIOM,这是我们要重点说明的,后面再谈。
Pri,重要程度,分为Required, Standard, Important, Optional, Extra,依次降低。
Section,本软件包所属的Section(分类)
Package,软件包的名字
Inst.Ver,已经安装的软件包的版本号
Avail.Ver,可用软件包的版本号
Description,软件包的简单描述
以上信息,除了EIOM外都比较容易理解,下面我们重点看看EIOM的含义:
E-Error flag,错误标志,可能取值为:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/5.jpg[/myimg]
I-Installed state,当前软件包的安装状态,可能取值为:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/6.jpg[/myimg]
O-Old mark,上次安装状态,可能取值为:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/7.jpg[/myimg]
M-Mark,本次安装方式,可能取值为:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/8.jpg[/myimg]
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/9.jpg[/myimg]
举个例子吧,如下图所示:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/10.jpg[/myimg]
软件包cvs的情况从图中可以看出:
的EIOM状态表示,当前该软件包还没有安装,可以安装的版本号为1.22.1p1-4。注意,此时O和M标志都是"_",表示目前你的机器上没有任何该软件包的痕迹,^_^。
该软件包属于devel组。
再比如:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/11.jpg[/myimg]
大名鼎鼎的bash已经安装了,安装的版本号为2.05a-4。注意观察EIOM标志。
4.2.2 开始选择安装软件包!
上面讲了这么多的键盘组合,那么到底如何选择软件包进行安装呢?很简单,只要选中需要的软件包或者软件包组,按下"+"键就可以了。顺利的话,该软件包的选择过程就结束,直接按回车键就可以了,dselect返回主界面,然后执行Install功能即可安装。
举例,还是上面的CVS软件包的例子:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/12.jpg[/myimg]
可以看出,当在cvs软件包上面按"+"键后,M标志变为"*",表示请求安装该软件包,同时光标移动到下一个软件包上面,以便对其他软件包进行操作。如果您只想安装cvs软件包,此时直接按回车键就可以了,出现如下的界面:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/13.jpg[/myimg]
知道怎么回答这个问题吧?^_^。
当然,也可以一次选择多个软件包进行安装。
4.2.3 出问题了!
软件包的安装过程出点小问题很正常,比如关联包没有安装,软件包间的冲突等等,dselect都会善意的提醒,并让你作出选择,决定下一步的操作方法。
比如安易做图oot-floopies这个软件包时,当选择安装(按"+"键)时,出现如下的界面:
[myimg]http://www-900.ibm.com/developerWorks/cn/linux/platform/debian/dselect/14.jpg[/myi