Welcome 微信登录

首页 / 操作系统 / Linux / Linux基础教程:Linux的rpm包管理

我们都知道,Windows的程序无法直接在Linux中运行,Windows中大量的木马和病毒也无法被Linux识别,这样加强了Linux的安全性,但所有的软件包都必须针对Linux再做单独的开发。软件包分类 源码包 (把源代码直接开放的包)   脚本安装包(源码包写一个安装界面,不需要手动安装) 二进制包(RPM包、系统默认包)源码包的优点:1.开源,如果有足够的能力,可以修改源代码2.可以自由选择所需的功能3.软件是编译安装,所以更加适合自己的系统,更加的稳定也效率更高4.卸载方便缺点:1.安装步骤较多,尤其在安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误2.编译过程时间过长,安装比二进制安装时间长3.因为是编译安装,安装过程中一旦报错新手很难解决。二进制包的优点:1.包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载2.安装速度比源码包安装快的多缺点:1.经过编译,不再可以看到源代码2.功能选择不如源码包灵活3.依赖性(当安装一个软件包须先安装另一个软件包)RPM:红帽子包管理器(RedHat Package Manager)rpm包管理方法     rpm命令管理     yum在线管理rpm包命名规则所有的rpm包都在光盘里,在Packages目录httpd-2.2.15-15.el6.x86_64.rpmhttpd   2.2.15   1 5         el6.       x86_64.       rpm软件包名 软件版本 软件发布的次数 适合的Linux平台 适合的硬件平台  rmp 扩展名需要注意的是包名和包全名是有区别的包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意安装路径。(如安装,升级)包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm中的数据库。(如查询,卸载)RPM包依赖性树形依赖:a——b——c安装时只能先安装c,再安装b,最后安装a,卸载时卸载c,再卸载b,再卸载a环形依赖:a——b——c——a用一条命令把abc同时安装模块依赖:模块依赖查询网站(www.rpmfind.net) 只要是.so.2的都为库依赖包,不是独立的包,是某一个软件包的软件,我们只要把软件所在的包安装上,也就自动安装上了,依赖性就会被解决。把需要的依赖包进行查询,如图中的是libodcinst.so.2,进去查询。yum在线管理(解决依赖性)实现准备一个包含所有rpm包的网站,作为我的在线服务器源,我们只要用在线命令去安装软件,不管我去依赖任何哪一个包,都不需要用用户解决,yum会自动去服务器下载需要的包,然后所有的依赖性都自己解决。是不是非要上网?不是,除了可以拿网络yum源作为服务器,还可以拿本地光盘作为yum源,因为光盘里包含了所有的rpm包。但是是需要收费的。 RPM常用命令RPM  安装rpm 【选项】 包全名 (一定是包全名,而且是绝对路径或者去/mnt/cdrom/Packages)-i (install)   安装-v (verbose) 显示详细信息-h (hash)    显示进度--nodeps       不检测依赖性 (虽然有这个选项,但根据上面的理论,你觉得会用它吗?) 当然,事项都是先将光盘挂载上的。
随机测试了个,没有出现依赖包问题,若提示出现的依赖包,就一层一层的安装。RPM包的升级-U  (upgrade)  升级rpm -Uvh 包全名需要有个比当前系统的包更高级的包,我们现在用的都是光盘中的包,没有更高级的包。RPM 卸载-e (erase)卸载--nodeps  不检查依赖性rpm -e 包名 (包名,因为是已经装过的包,在后台数据库搜索)RPM的查询方式安装和卸载用yum方法更为简单,因为它会自动解决依赖性,但是查询只能通过rpm命令来查询。yum有查询,但是没有rpm查询的多。rpm -q 包名  查询包是否安装-q (query)查询-a(all) 所有-l (list) 列表rpm -qa 【包名】  查询所有已经安装过的RPM包rpm -ql 【包名】  查询包中文件的安装位置-p (package)    查询未安装包信息 有人看到这里就开始郁闷了,包都没安装,怎么查看安装位置啊。其实linux包安装位置是组建包的时候就决定好的,即使没安装,我们也可以查看它打算装哪 查询系统文件属于哪个RPM包rpm -qf 系统文件文件名-f (file)查询系统文件属于哪个软件包必须是通过包装出来的,才能反向追查 查询软件包的依赖性rpm -qR 包名-R (requires)  查询软件包的依赖性 安装appach需要装这么多这么多包。。。查询已经安装过的包的依赖性没有什么意义,主要还是查询为安装包的依赖性。更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2016-09/135078p2.htm
  • 1
  • 2
  • 下一页
Linux基础教程:Linux的用户和组管理Linux基础教程:Linux的安装与简介相关资讯      rpm包  RPM包管理  Linux包管理 
  • 采用FPM工具制作RPM包  (11/09/2015 08:03:02)
  • Linux下RPM包管理  (04/13/2015 08:04:28)
  • 如何在Fedora,CentOS,RHEL中检查  (08/16/2014 20:22:53)
  • yum仓库搭建之RPM包制作  (11/06/2015 09:04:27)
  • 使用Docker镜像构建RPM包  (01/26/2015 10:42:10)
  • RPM包rpmbuild SPEC文件深度说明  (02/18/2014 18:14:45)
本文评论 查看全部评论 (0)
表情: 姓名: 字数