红联Linux门户
Linux帮助

软件包管理

发布时间:2005-05-05 21:43:01来源:红联作者:非你不要
通常 Linux 下的应用软件包有以下三种类型:

tar包
由 Unix 系统的打包工具 tar 制作,如 example-1.2.3-1.tar.gz。

rpm包
RedHat 公司提供的一种软件包封装格式,如 example-1.2.3-1.i386.rpm。

dpkg包
Debain Linux 提供的一种包封装格式,如 example-1.2.3-1.i386.deb。
通常用 tar 打包的都是源程序,用 rpm、dpkg 打包的则是可执行程序。一般一个软件会提供多种打包格式的安装程序,用户可以根据情况选择使用。自己编译安装源程序具有更大的灵活性,但初
级用户可能会遇到一些困难;而可执行程序包能够更容易地完成安装。
本章先简单介绍如何使用 shell 命令安装和管理系统中的应用程序和软件包,之后详细说明如何使用图形化的软件包管理工具在桌面环境下安装和管理 rpm 软件包。

5.1 使用rpm命令
rpm 是一个功能十分强大的软件包管理系统,它使 Linux 下安装、升级和删除软件包的工作变得
简单容易,并且具有查询、验证软件包的功能。与图形化工具相比,使用命令行可以获得更大的灵活性。
以下的例子都以 example-1.2.3-1.i386.rpm 代表对象软件包的名称。

5.1.1 安装、升级和更新
应用下面三个参数为系统安装软件包:
rpm -i 安装一个新的软件包
rpm -U 升级一个软件包,如果系统中原来不存,就进行安装
rpm -F 更新一个软件包,如果系统中原来不存在,就不进行安装
经常和这几个参数配合使用的参数包括:
-v 查看安装过程中的各种信息
-h 在安装过程中显示进度条
一个常用的命令形式如下:
rpm -Uvh example-1.2.3-1.i386.rpm
这个命令将升级或安装软件包,同时显示安装信息和进度条。

5.1.2 删除
删除一个软件包的命令是:
rpm -e example
删除时使用的是软件名,而不是软件包的全称。

5.1.3 查询

列出用户已经安装的RPM包清单
如果想查询系统中所有已经安装的 RPM 包,使用 rpm -qa 即可输出所有已安装 RPM 包的列表;
如果是查看某个已经安装的软件包,则使用 rpm -q example 命令。

查看一个RPM包中包括的文件
想要查看某个软件包中包含的文件清单,有下面两种方法:
a) 如果是未安装的软件包,则使用
rpm -qlp example-1.2.3-1.i386.rpm
b) 如果是已安装的软件包,请使用
rpm -ql example

确定某个文件属于哪个RPM包
如果遇到了一个不认识的文件,要找出它属于哪个软件包,则首先记录这个文件的完整路径(绝
对路径),然后输入以下命令:
rpm -qf filename

查询RPM包的用途
用户可以在安装或使用时查询每个软件包的用途、版本及其它信息,使用如下的命令完成查询:
rpm -qip example-1.2.3-1.i386.rpm

5.1.4 验证
验证一个软件包,就是比较原始包和已安装软件包中文件的信息。具体来说,这些信息包括每个文件的大小、MD5校验和、访问许可权、类型以及所属的用户和组等。
使用命令 rpm -V 可以验证一个包,下面是常用的几种情况:

验证包含某个特殊文件的软件包
rpm -Vf filename
验证所有已安装的软件包
rpm -Va
上面介绍是几个常用的 RPM 命令,关于 RPM 工具的更多资源,请参看相关的 man手册页;还可以在以下的网址 http://www.rpm.org 获得 RPM 的最新资源。

5.2 安装tar格式的软件包
*.tar.gz 形式的二进制软件包是用 tar 工具来打包,用 gzip 程序压缩的,安装时需要先解开压缩
包,其安装过程分为如下几个步骤:
1、 获得应用软件:可以通过网络下载、光盘或其它渠道得来;
2、 解压缩文件;
一般的 tar 包,都会再做一次压缩,常见的是 gzip 压缩,用“tar -xvzf *.tar.gz”,就可以完成
解压和解包工作;
3、 阅读附带的 INSTALL 和 README 文件;
4、 执行“./configure”命令为编译做好准备;
5、 通过后,将生成用于编译的 makefile 文件,运行“make”命令开始进行编译;编译的过程视软件的规模和计算机性能的不同,所耗费的时间也不同; 6、 执行“make install”命令完成安装;
7、 执行“make clean”命令删除安装时产生的临时文件。
怎样运行安装后的应用软件呢?一般来说,Linux 下的应用软件可执行文件存放在 /usr/local/bin
目录下,但这也不是绝对的,最好的方法是查看该软件所附的 INSTALL 和DEADME 文件,其中会有明确的说明。
与安装 RPM 软件包相比,用户自己编译安装源程序虽然具有灵活的可配置性,但编译过程中可能会遇到很多问题,它适合于有一定开发经验的用户,一般不推荐初学者使用。

5.3 软件包管理器
Red Flag Server 4.1 系统中提供了一个全新的图形化软件包管理工具,能够帮助用户轻松地对
rpm 形式的软件包进行安装、升级、卸载、验证、查询、删除等操作。
在控制面板的“系统配置”窗口中,双击“软件包管理器”图标打开软件包管理器;也可以直接用命令 rpmmanager 启动。
程序主界面包括三个标签页,其功能分别如下:
用户软件包
管理除系统发行光盘所含软件包以外的用户自行安装、更新的软件包。
系统软件包
管理 Red Flag Server 4.1 发行光盘中包含的所有软件包。
其他工具
完成 rpm 包查询及系统软件包更新。

5.3.1 用户软件包管理
软件包管理器的“用户软件包”标签页,该窗口显示了除系统发行光盘中提供的软件包外,用户自己安装的软件包列表。
每一个软件包的基本信息(名称、版本、大小、概要说明)已经列出,如果想得到更详细的说明,
只要双击该软件包,调出下图5-2所示的信息窗口。
系统会维护一个所有已安装的软件包和文件的数据库,这些信息都来自于它。

5.3.1.1 安装用户软件包
用户经常会在系统中安装一些新的应用软件,这些应用软件可以是从某些网站上下载得来,也可
以来自光盘或其它渠道;
在“用户软件包”标签页中,点击“安装其他软件包”按钮,系统将调出 RPM 软件包安装工具
帮助用户完成软件包安装。
点击工具栏中的“打开”按钮,在弹出的文件浏览窗口中选择要安装的一个或多个 RPM 包,按
“确定”后,所选的软件包将显示在窗口左侧的列表中。如果不想安装某个软件包,可以点击工具栏
中的“去掉”按钮取消对该软件包的选择。
确认后,按下工具栏中的“安装”按钮,开始安装选中的软件包,安装程序会对配置文件进行特别处理,并自动检查软件包之间的依赖关系。
下一个界面将提示安装已完成,点击“确定”按钮,结束安装过程。

5.3.1.2 删除用户软件包
要删除不再使用的软件包,在“用户软件包”窗口列表中选择将删除的软件包项,按下“卸载软
件包”按钮,正式开始删除前还会出现确认对话框,确认无误后按下“开始删除”按钮。
程序会检查被删除软件包与其它软件包之间的依赖关系,如果要忽略依赖关系强制删除的话,将可能造成依赖于该软件包的程序无法运行。

5.3.2 系统软件包管理
系统软件包是指 Red Flag Server 4.1 发行光盘中所包含的全部软件包,该模块用于给出当前计算机中所安装系统软件包的信息,并对系统软件包的安装、更新、删除进行管理。图5-5是“系统软件包”标签页的界面。
界面上方按系统软件包的分组列出了每个软件包组的安装情况,即该组包括软件包的总数和已安
装数。
界面下方窗口中列出了对应软件包组中包含的系统软件包在当前系统中的安装情况,包括软件包
名称、版本、大小等。
如果软件包已经安装,则状态显示为 ,软件包名称前的小方框标记为 (选中);如果系统中尚未安装某软件包,则状态显示为 ,软件包名称前的小方框标记为 (未选中)。

5.3.2.1 安装系统软件包
要将未装的系统软件包安装到系统中,首先需要把包含该软件包的 Red Flag Server 4.1 光盘放在光驱中,然后,把软件包列表中要安装软件包名称前的标记置为 (选中),按“安装/卸载系统”按钮,启动 RPM 软件包安装工具开始安装,步骤与5.3.1.1节中的描述相似。
安装完成后,窗口中的软件包标记将显示为 。

5.3.2.2 删除系统软件包
要删除已安装的软件包,请把列表中对应软件包名称前的标记置为 (未选中),按“安装/卸载
系统”按钮,开始卸载系统软件包。与用户软件包的删除一样,会出现删除确认对话框,确认后按“开始删除”按钮。
卸载完成后,窗口中软件包标记将显示为 。
程序会检查被删除软件包与其它软件包之间的依赖关系,如果要忽略依赖关系强制删除的话,将可能造成依赖于该软件包的程序无法运行。

5.3.3 其他
在“其它工具”标签页中,可以完成在系统中进行 RPM 查询和更新系统操作。

5.3.3.1 RPM查询
选择“查找RPM包”,在文本框中输入要查找的RPM包名称或名称中的几个字符,按“查找”按钮,系统中符合条件的软件包将在窗口中列出。
选择“查找文件所属RPM包”,在文本框中输入文件的位置,注意,必须是绝对路径。该文件所属的软件包将在窗口中列出。

5.3.3.2 更新系统
Red Flag Server 4.1 支持多种升级方式,图5-7所示的升级工具帮助用户完成系统的升级。
首先选择升级方式,具体如下:
从光盘驱动器
将升级盘放入光驱中,工具将识别并引导系统更新到新的升级版本。
从指定位置
输入或选择要升级的软件包在本地硬盘上所属目录的绝对路径。
从网络
从红旗网站上升级系统,升级工具将检测网站上所有可以升级的软件包。
按“下一步”继续,(如果选择的是从网络升级,升级工具会首先列出网站上所有可以升级的软
件包供用户选择,选择并确认后按“下一步”,系统会将选定的软件包下载到一个本地的临时目录中),接下来的步骤对三种升级方式来讲都是相同的,操作方法类似与5.3.1.1节中的安装用户软件包,确认需要更新的软件包后开始执行更新操作。
文章评论

共有 3 条评论

  1. pighomelid 于 2007-01-16 21:25:16发表:

    谢谢啊 学习了啊

  2. q111111 于 2007-01-16 20:12:07发表:

    :ha3nd

  3. 于 2006-08-01 15:05:16发表: