AAlinux的软件安装和管理之rpm.doc_第1页
AAlinux的软件安装和管理之rpm.doc_第2页
AAlinux的软件安装和管理之rpm.doc_第3页
AAlinux的软件安装和管理之rpm.doc_第4页
AAlinux的软件安装和管理之rpm.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux的软件安装和管理使用RPM管理包1 什么是RPMRPM是一个开放的软件包管理系统,最初的全称是Red Hat Package Manager。它工作于Red Hat Linux以及其它Linux系统,成为了Linux中公认的软件包管理标准。红帽子软件公司鼓励其他厂商来了解RPM并在自己的产品中使用它。RPM的发布基于GPL协议。随着RPM在各种发行版本的广泛使用,如今RPM的全称是RPM Package Manager。RPM由RPM社区负责维护,可以登录到RPM的官方站点http:/www.rpm .org/查询最新的信息。2 为什么使用RPM使用RPM最大的好处在于它提供快速之安装,减少编译安装之侦错困扰。 对于最终用户来说,RPM所提供的众多功能使维护系统要比以往容易的多。安装、卸载和升级RPM软件包均只需一条命令即可完成,所有烦琐的细节问题无须您费心。RPM维护一个所有已安装的软件包和文件的数据库,可以让您进行功能强大的软件包查询和验证工作。在软件包升级过程中,RPM会对配置文件进行特别处理,因此您绝对不会丢失以往的定制信息这对于直接使用.tar.gz文件是不可能的。 对于程序员,RPM可以让您连同软件的源代码打包成源代码和二进制软件包供最终用户使用。这个过程十分简单,整个过程由一个主文件和可能的补丁程序组成。RPM在软件的新版本发布时,这种“原始”源代码,补丁程序和软件生成指令的清晰描述简化了软件包的维护工作。3 RPM的功能简言之,RPM具有如下五大功能:安装将软件从包中解出来,并且安装到硬盘。卸载将软件从硬盘清除。升级替换软件的旧版本。查询查询软件包的信息。验证检验系统中的软件与包中软件的区别。4 RPM包的名称格式RPM包的名称有其特有的格式,如某软件的RPM包名称由如下部分组成:name-version.type.rpm其中:name为软件的名称version为软件的版本号type为包的类型i345686:表示在Inte l x 86计算机平台上编译的sparc:表示在sparc计算机平台上编译的alpha:表示在alpha计算机平台上编译的src:表示软件源代码rpm 为文件扩展名例如:bind-9.2.1-16.i386.rpm:是bind(9.2.1-16)的Intel 386平台编译版本包bind-9.2.1-16.sparc.rpm:是bind(9.2.1-16)的sparc平台编译版本包bind-9.2.1-16.alpha.rpm:是bind(9.2.1-16)的alpha平台编译版本包bind-9.2.1-16.src.rpm:是bind(9.2.1-16)的源代码版本包因此,看到一个RPM包的文件名之后就可以获得该软件包的大致信息了。5 从何处获得RPM软件包从发行套件的C D中查找从软件的主站点查找下载从http:/www.rpm 查找下载从查找下载6 rpm 命令简介在使用rpm包的 Linux中升级和安装系统通常使用下一节讲述的 yum 命令,因为它可以良好的解决包的依赖性问题,即自动安装/处理依赖的其他软件包。但是 rpm 命令还是在某些情况下用得上,比如,查询包信息,安装或卸载一个不在软件库中的 .rpm包等。rpm 的完整语法参见 rpm 命令手册,下面只列出较常见的用法。命令说明rpm -i 安装指定的 .rpm 文件rpm -U 用指定的 .rpm 文件升级同名包rpm -e 删除指定的软件包rpm -q 查询指定的软件包在系统中是否安装rpm -qa 查询系统中安装的所有RPM软件包rpm -qf 查询系统中指定文件所属的软件包rpm -qi 查询一个已安装软件包的描述信息rpm -ql 查询一个已安装软件包里所包含的文件rpm -qc 查看一个已安装软件包的配置文件位置rpm -qd 查看一个已安装软件包的文档安装位置rpm -qR 查询一个已安装软件包的最低依赖要求rpm -qpi 查询一个未安装的 RPM文件的描述信息rpm -qpl 查询一个未安装的 RPM文件里所包含的文件rpm -qpc 查看一个未安装的 RPM文件的配置文件位置rpm -qpd 查看一个未安装的 RPM文件的文档安装位置rpm -qpR 查询一个未安装的 RPM文件的最低依赖要求rpm -V 校验指定的软件包rpm -V 校验包含指定文件的软件包rpm -Vp 校验指定的未安装的 RPM文件rpm -Va 校验所有已安装的软件包rpm -rebuilddb 重新创建系统的 RPM 数据库,用于不能安装和查询的情况rpm -import 导入指定的签名文件rpm -Kv -nosignature 检查指定的RPM文件是否已损坏或被恶意篡改(验证包的MD5校验和)rpm -K 检查指定RPM文件的GnuPG签名备注:l 在安装/升级时,还可以使用 -vh 参数,其中:v表示在安装过程中将显示较详细的信息;h表示显示水平进度条l 在使用 rpm -qa 命令时,还可以使用 |more 或 |grep 进行过滤l 所有的 既可以是本地文件,也可以是远程文件l 校验软件包将检查软件包中的所有文件是否与系统中所安装的一致性。包括校验码文件大小,存取权限和属主属性都将根据数据库进行校验。该操作可在用户安装了新程序以后怀疑某些文件遭到破坏时使用。7 rpm 命令使用举例l 安装软件包1、安装本地软件包# rpm -ivh /media/cdrom/CentOS/elinks-0.11.1-5.1.el5.i386.rpm2、安装远程软件包# rpm -ivh /5/os/i386/CentOS/elinks-0.11.1-5.1.el5.i386.rpm图形界面安装使用软件包管理器l 升级软件包1、从本地文件升级软件包# rpm -Uvh elinks-0.11.1-.el5.i386.rpm2、从远程文件升级软件包# rpm -Uvh /5/updates/i386/RPMS/elinks-0.11.1-.el5.i386.rpml 卸载软件包# rpm -e elinksl 查询软件包# 查询 elinks 软件包在系统中是否安装$ rpm q elinks# 查询系统中已安装的 elinks 软件包的描述信息$ rpm qi elinks# 查询系统中已安装的 elinks 软件包里所包含的文件$ rpm ql elinks# 查询系统中文件 /etc/passwd 所属的软件包$ rpm qf /etc/passwd# 查询 elinks-0.11.1-.el5.i386.rpm 包文件中的信息$ rpm qp elinks-0.11.1-.el5.i386.rpm# 查询系统中已经安装的所有包含名字php的软件包$ rpm qa | grep php# 查询 httpd 包的最低依赖要求$ rpm -qR httpdl 验证软件包/ 验证 elinks 软件包# rpm V elinks/ 验证包含文件 /etc/passwd 的软件包# rpm Vf /etc/passwd/ 验证 elinks-0.11.1-.el5.i386.rpm 包文件# rpm Vp elinks-0.11.1-.el5.i386.rpm/ 验证所有已安装的软件包# rpm Va如果校验一切正常,将没有输出,反之则输出不一致结果,格式为:xxxxxxxx 文件名字段1由八个字符组成,每个字符指明该文件与RPM数据库中一致或不一致的地方,单个点(.)说明没有异常,具体含义如下:5 校验和S 文件大小L 符合连接T 文件修改时间D 设备U 用户G 组M 文件模式? 文件不可读如果有任何输出显示,请判断是否真的有问题,然后决定删除或重安装异常的软件包,或者通过其它方式解决。8 使用yum升级软件包yum是 Yellow dog Updater Modified 的简称,起初是由yellowdog 发行版的开发者 Terra Soft 研发,用 python 写成,那时叫做 yup (yellow dog updater),后经杜克大学的 LinuxDuk e 开发团队进行改进,遂有此名。yum 的宗旨是自动化地升级,安装/移除rpm 包,收集rpm 包的相关信息,检查依赖性并自动提示用户解决。yum 的关键之处是要有可靠的 repository,顾名思义,这是软件的仓库,它可以是 http 或 ftp 站点,也可以是本地软件池,但必须包含 rpm 的 header,header 包括了rpm 包的各种信息,包括描述,功能,提供的文件,依赖性等.正是收集了这些 he ade r并加以分析,才能自动化地完成余下的任务。yum 具有如下特点:l 自动解决包的倚赖性问题能更方便的添加/删除/更新RPM包l 便于管理大量系统的更新问题l 可以同时配置多个资源库(Repository)l 简洁的配置文件(/etc/yum .conf)l 保持与RPM数据库的一致性l 有一个比较详细的log,可以查看何时升级安装了什么软件包等l 使用方便yum 是CentO S/Fedora系统自带的,因此它能使用C entOS官方的软件源,完成各种官方发布的各种升级。对于第三方软件源的支持,yum 也不差,大多数支持apt 的 repository,也能支持 yum ,比如说 freshrpm s、fedora.us、livna、dag 等。9 为什么使用 yumLinux系统维护中令管理员很头疼的就是软件包之间的依赖性了,往往是你要安装A软件,但是编译的时候告诉你X软件安装之前需要B软件,而当你安装Y软件的时候,又告诉你需要Z库了,好不容易安装好Z库,发现版本还有问题等。由于历史原因,RPM软件包管理系统对软件之间的依存关系没有内部定义,造成安装RPM软件时经常出现令人无法理解的软件依赖问题。其实开源社区早就对这个问题尝试进行解决了,不同的发行版推出了各自的工具,比如Yellow Dog的YUM(Yellowdog Updater, Modified),Debian的APT(Advanced Packaging Tool)等。开发这些工具的目的都是为了要解决安装RPM时的依赖性问题,而不是额外再建立一套安装模式。这些软件也被开源软件爱好者们逐渐移植到别的发行版上。目前,APT和YUM都可以运行在Red Hat系统上。目前 yum 是R e d Hat/Fe dora系统上默认安装的更新系统。10 yum 命令工具简介yum 完整语法参见其命令手册,下面只列出较常见的用法。命令功能yum check-update 检查可更新的所有软件包yum update 下载更新系统已安装的所有软件包yum upgrade 大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级yum install 安装新软件包yum update 更新指定的软件包yum remove 卸载指定的软件包yum groupinstall 安装指定软件组中的软件包yum groupupdate 更新指定软件组中的软件包yum groupremove 卸载指定软件组中的软件包yum grouplist 查看系统中已经安装的和可用的软件组yum list 列出资源库中所有可以安装或更新以及已经安装的rpm包yum list 列出资源库中与正则表达式匹配的可以安装或更新以及已经安装的rpm包yum list available 列出资源库中所有可以安装的rpm包yum list available 列出资源库中与正则表达式匹配的所有可以安装的rpm包yum list updates 列出资源库中所有可以更新的rpm包yum list updates 列出资源库中与正则表达式匹配的所有可以更新的rpm包yum list installed 列出资源库中所有已经安装的rpm包yum list installed 列出资源库中与正则表达式匹配的所有已经安装的rpm包yum list extras 列出已经安装的但是不包含在资源库中的rpm包yum list extras 列出与正则表达式匹配的已经安装的但是不包含在资源库中的rpm包yum list recent 列出最近被添加到资源库中的软件包yum search 检测所有可用的软件的名称、描述、概述和已列出的维护者,查找与正则表达式匹配的值yum provides 检测软件包中包含的文件以及软件提供的功能,查找与正则表达式匹配的值yum clean headers 清除缓存中的rpm头文件yum clean packages 清除缓存中rpm包文件yum clean all 清除缓存中的rpm头文件和包文件yum deplist 显示软件包的依赖信息备注:l 当第一次使用yum 或yum 资源库有更新时,yum 会自动下载所有所需的headers放置于 /var/cache /yum 目录下,所需时间可能较长。l 还可以使用 yum info 命令列出包信息,yum info 可用的参数与 yum list 的相同。l yum 命令还可以使用 -y 参数用于用 yes 回答命令运行时所提出的问题。11 yum 命令工具使用举例1、升级系统# yum update2、安装指定的软件包# yum install w3m lync3、升级指定的软件包# yum update w3m lync4、卸载指定的软件包# yum remore w3m lync5、查看系统中已经安装的和可用的软件组# yum grouplist6、安装指定软件组中的软件包# yum groupinstall Virtualization7、更新指定软件组中的软件包# yum groupupdate Virtualization8、卸载指定软件组中的软件包# yum groupremore Virtualization9、清除缓存中的rpm 头文件和包文件# yum clean all10、搜索相关的软件包# yum search python11、显示指定软件包的信息# yum info python12、查询指定软件包的依赖信息# yum deplist python13、列出所有以 yum 开头的软件包# yum list yum*14、列出已经安装的但是不包含在资源库中的rpm 包# yum list extras如果您安装了并非来自仓库的软件,当它有新版时,yum update 无法自动更新它。为保证您总是用着最新的软件,可以订阅一份电子邮件或 R SS 服务,这样当有新版时可以得到通知。12 自动使用yum更新系统yum-cron还可以使用 yum -cron 自动安排 cron 任务。要使用 yum -cron 需要使用如下命令安装:# yum -y install yum-cron使用如下命令可知 yum -cron 包安装的文件:$ rpm -ql yum-cron/etc/cron.daily/yum.cron # 每日更新脚本/etc/cron.weekly/yum.cron # 每周更新脚本/etc/rc.d/init.d/yum # 启动脚本/etc/yum/yum-daily.yum/usr/share/doc/yum-cron-0.1/usr/share/doc/yum-cron-0.1/COPYING/usr/share/doc/yum-cron-0.1/README要激活自动更新,输入如下命令:# chkconfig -level 345 yum on# service yum

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论