RPM命令详解
2005-02-16 22:53
176 查看
RPM是RedHat Package Manager的缩写,意即RedHat(红帽子)软件包管理器。(RedHat是美国有名的LINUX公司,网址:http://www.redhat.com) 对于一个操作系统来说,不能没有一个象样的软件包管理器。没有软件包管理器的帮助,操作系统发行版的制作者将面临这样或那样的难题,用户安装,升级,卸载与发布软件包也将是非常麻烦的,系统管理也容易出现问题。相反,有了专门的软件包管理器,软件制作者易于制作和发行自己的软件了,而对于普通用户来说,软件包的安装维护将变得非常方便了。这种 情况,对于一个操作系统的推广也会起到良好的促进作用。RPM就是随着RedHat LINUX发行版的流行而迅速推广开来的,二者的表现相得易彰。
RPM先行者
最初的时候,LINUX系统的发布并没有使用什么软件包管理器。随着时间的推移,RedHatmLINUX开发者意识到开发一个软件包管理器的重要性,于是开发出RPP这个管理器。
RPP相对于RPM虽然是简单的,但已有了几项重要的功能,如打一个简单的命令就可以实现软件的安装与卸载,包中可含有安装前后与卸载前后执行的脚本程序,还可以随时校验已安装的软件包,查询功能也很强大。
RPP的缺点在于,RPP打包是基于特别修改过的(针对RPP)源代码的,因而这些源代码并非是纯正的源代码。由于这个原因,当软件包开发者想建立大量不同的软件包时,将面临众多技术面的问题。RPP也不能保证当前的执行程序是基于打包过的源程序的,并且RPP不支持多处理器体系结构。与RPP同时开发的,还有PMS(即package management system,软件包管理系统),这是另一群LINUX爱好者开发的。PMS采用的是纯正的源代码,它允许软件包制作者很快释出一个软件的最新版本,并且可以立刻看到该软件的变化。RPM采用了这一明智的做法,这也是PMS对RPM的一项重大贡献。PMS的缺点是查询功能不强,没有包校验功能,不支持多体系结构,数据库设计也不好。在RPP和PMS之后,Rik Faith和Doug Hoffman开发了PM管理器。该管理器整合了RPP与PMS的许多功能,但是数据库设计还不强,依然不支持多体系结构。
RPM开发
此后,Marc Ewing和Erik Troan两人在吸取RPP,PMS,PM设计经验的基础上,用PERL语开发了RPM软件包管理器,即RPM1.0版。
其成功之处在于:
可自动处理配置文件;
可重建大量的软件包;
易于使用。
其不足之处在于:
程序大,运行速度慢,因为它是用PERL这种解释型的语言写的;
数据库功能太弱;
不支持多体系结构;
包裹文件格式不可扩展。
针对RPM1.0的弱点,RPM的开发者再度努力,将RPM升级到2.0,3.0和现在的4.0版本。他们主要做了以下几点:
用C重写了程序,这极大地提高了RPM的运行速度。
RPM数据库格式进行了再设计,重点从性能和可靠性两方面提高。
软件包格式也进行了再设计,方便以后的扩展和升级。
建立了rpmlib(RPM函数库),方便其它程序调用RPM。
增加多体系支持,方便RPM跨平台使用(不论是x86体系,还是sparc等其它体系)。
网上的RPM
RPM官方网址为http://www.rpm.org,该网站刊登有RPM的最新消息,有关于RPM的说明文档,还可下载最新的RPM软件源代码和执行代码,不妨常去看看。
小结
如今的RPM使得软件包安装与卸载更容易,校验已安装的软件包是否正常也容易,将程序(源程序或执行程序)打包也简单了,跨平台的支持,遵循GPL版权发布源代码,使得RPM得到更广泛的应用与推广。RPM正在风靡LINUX与非LINUX世界。如果你想了解甚至精通RPM,那么请跟我来吧!
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
RPM先行者
最初的时候,LINUX系统的发布并没有使用什么软件包管理器。随着时间的推移,RedHatmLINUX开发者意识到开发一个软件包管理器的重要性,于是开发出RPP这个管理器。
RPP相对于RPM虽然是简单的,但已有了几项重要的功能,如打一个简单的命令就可以实现软件的安装与卸载,包中可含有安装前后与卸载前后执行的脚本程序,还可以随时校验已安装的软件包,查询功能也很强大。
RPP的缺点在于,RPP打包是基于特别修改过的(针对RPP)源代码的,因而这些源代码并非是纯正的源代码。由于这个原因,当软件包开发者想建立大量不同的软件包时,将面临众多技术面的问题。RPP也不能保证当前的执行程序是基于打包过的源程序的,并且RPP不支持多处理器体系结构。与RPP同时开发的,还有PMS(即package management system,软件包管理系统),这是另一群LINUX爱好者开发的。PMS采用的是纯正的源代码,它允许软件包制作者很快释出一个软件的最新版本,并且可以立刻看到该软件的变化。RPM采用了这一明智的做法,这也是PMS对RPM的一项重大贡献。PMS的缺点是查询功能不强,没有包校验功能,不支持多体系结构,数据库设计也不好。在RPP和PMS之后,Rik Faith和Doug Hoffman开发了PM管理器。该管理器整合了RPP与PMS的许多功能,但是数据库设计还不强,依然不支持多体系结构。
RPM开发
此后,Marc Ewing和Erik Troan两人在吸取RPP,PMS,PM设计经验的基础上,用PERL语开发了RPM软件包管理器,即RPM1.0版。
其成功之处在于:
可自动处理配置文件;
可重建大量的软件包;
易于使用。
其不足之处在于:
程序大,运行速度慢,因为它是用PERL这种解释型的语言写的;
数据库功能太弱;
不支持多体系结构;
包裹文件格式不可扩展。
针对RPM1.0的弱点,RPM的开发者再度努力,将RPM升级到2.0,3.0和现在的4.0版本。他们主要做了以下几点:
用C重写了程序,这极大地提高了RPM的运行速度。
RPM数据库格式进行了再设计,重点从性能和可靠性两方面提高。
软件包格式也进行了再设计,方便以后的扩展和升级。
建立了rpmlib(RPM函数库),方便其它程序调用RPM。
增加多体系支持,方便RPM跨平台使用(不论是x86体系,还是sparc等其它体系)。
网上的RPM
RPM官方网址为http://www.rpm.org,该网站刊登有RPM的最新消息,有关于RPM的说明文档,还可下载最新的RPM软件源代码和执行代码,不妨常去看看。
小结
如今的RPM使得软件包安装与卸载更容易,校验已安装的软件包是否正常也容易,将程序(源程序或执行程序)打包也简单了,跨平台的支持,遵循GPL版权发布源代码,使得RPM得到更广泛的应用与推广。RPM正在风靡LINUX与非LINUX世界。如果你想了解甚至精通RPM,那么请跟我来吧!
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、安装 命令格式: rpm -i ( or --install) options file1.rpm ... fileN.rpm 参数: file1.rpm ... fileN.rpm 将要安装的RPM包的文件名 详细选项: -h (or --hash) 安装时输出hash记号 (``#'') --test 只对安装进行测试,并不实际安装。 --percent 以百分比的形式输出安装的进度。 --excludedocs 不安装软件包中的文档文件 --includedocs 安装文档 --replacepkgs 强制重新安装已经安装的软件包 --replacefiles 替换属于其它软件包的文件 --force 忽略软件包及文件的冲突 --noscripts 不运行预安装和后安装脚本 --prefix 将软件包安装到由 指定的路径下 --ignorearch 不校验软件包的结构 --ignoreos 不检查软件包运行的操作系统 --nodeps 不检查依赖性关系 --ftpproxy 用 作为 FTP代理 --ftpport 指定FTP的端口号为 通用选项 -v 显示附加信息 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为 二、删除 命令格式: rpm -e ( or --erase) options pkg1 ... pkgN 参数 pkg1 ... pkgN :要删除的软件包 详细选项 --test 只执行删除的测试 --noscripts 不运行预安装和后安装脚本程序 --nodeps 不检查依赖性 通用选项 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为 三、升级 命令格式 rpm -U ( or --upgrade) options file1.rpm ... fileN.rpm 参数 file1.rpm ... fileN.rpm 软件包的名字 详细选项 -h (or --hash) 安装时输出hash记号 (``#'') --oldpackage 允许"升级"到一个老版本 --test 只进行升级测试 --excludedocs 不安装软件包中的文档文件 --includedocs 安装文档 --replacepkgs 强制重新安装已经安装的软件包 --replacefiles 替换属于其它软件包的文件 --force 忽略软件包及文件的冲突 --percent 以百分比的形式输出安装的进度。 --noscripts 不运行预安装和后安装脚本 --prefix 将软件包安装到由 指定的路径下 --ignorearch 不校验软件包的结构 --ignoreos 不检查软件包运行的操作系统 --nodeps 不检查依赖性关系 --ftpproxy 用 作为 FTP代理 --ftpport 指定FTP的端口号为 通用选项 -v 显示附加信息 -vv 显示调试信息 4000 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为 四、查询 命令格式: rpm -q ( or --query) options 参数: pkg1 ... pkgN :查询已安装的软件包 详细选项 -p (or ``-'') 查询软件包的文件 -f 查询属于哪个软件包 -a 查询所有安装的软件包 --whatprovides 查询提供了 功能的软件包 -g 查询属于 组的软件包 --whatrequires 查询所有需要 功能的软件包 信息选项 显示软件包的全部标识 -i 显示软件包的概要信息 -l 显示软件包中的文件列表 -c 显示配置文件列表 -d 显示文档文件列表 -s 显示软件包中文件列表并显示每个文件的状态 --scripts 显示安装、卸载、校验脚本 --queryformat (or --qf) 以用户指定的方式显示查询信息 --dump 显示每个文件的所有已校验信息 --provides 显示软件包提供的功能 --requires (or -R) 显示软件包所需的功能 通用选项 -v 显示附加信息 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为 五、校验已安装的软件包 命令格式: rpm -V ( or --verify, or -y) options 参数 pkg1 ... pkgN 将要校验的软件包名 软件包选项 -p Verify against package file -f 校验所属的软件包 -a Verify 校验所有的软件包 -g 校验所有属于组 的软件包 详细选项 --noscripts 不运行校验脚本 --nodeps 不校验依赖性 --nofiles 不校验文件属性 通用选项 -v 显示附加信息 -vv 显示调试信息 --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下 --rcfile 设置rpmrc文件为 --dbpath 设置RPM 资料库存所在的路径为 六、校验软件包中的文件 语法: rpm -K ( or --checksig) options file1.rpm ... fileN.rpm 参数: file1.rpm ... fileN.rpm 软件包的文件名 Checksig--详细选项 --nopgp 不校验PGP签名 通用选项 -v 显示附加信息 -vv 显示调试信息 --rcfile 设置rpmrc文件为 七、其它RPM选项 --rebuilddb 重建RPM资料库 --initdb 创建一个新的RPM资料库 --quiet 尽可能的减少输出 --help 显示帮助文件 --version 显示RPM的当前版本 |
相关文章推荐
- rpm命令详解
- (zt)Linux 中 RPM 命令参数使用详解
- Linux操作系统中RPM命令参数的使用详解
- rpmbuild 命令详解
- Linux 中 RPM 命令参数使用详解
- rpm命令详解
- Linux 中常用的Rpm命令实例详解
- Linux 下rpm命令参数详解
- 在Linux系统中RPM 命令参数使用详解
- RPM 命令参数使用详解
- 软件包安装命令rpm和yum详解
- rpm 命令详解
- Linux命令行:rpm 命令参数使用详解
- rpm包及rpm 命令详解
- Linux 中 RPM 命令参数使用详解(转)
- rpmsign命令_Linux rpmsign 命令用法详解:使用RPM软件包的签名管理工具
- rpmquery命令_Linux rpmquery 命令用法详解:从RPM数据库中查询软件包信息
- 嵌入式 Linux命令rpm2cpio详解
- RPM 命令详解
- Linux 中 RPM 命令参数使用详解