22.Rpm管理rpm包

需要考虑:

  1. OS版本,e.g. Centos6/7 cat /etc/redhat-release
  2. 系统架构,e.g. i386/x86_64 uname -m
  3. 依赖关系,e.g. ntfs-3g-devel 需要依赖ntfs-3g
  4. rpm包的版本, e.g. 2015/2017
==安装 
rpm -ivh local_path     //local_path本地路径
rpm -ivh url_path       //url_path地址链接

[root@fanhua ~]# rpm -ivh ntfs-3g-2017.3.23-1.el7.x86_64.rpm    //套件名,-i安装
[root@fanhua ~]# rpm -ivh zip-3.0-11.el7.x86_64.rpm

[root@fanhua ~]# rpm -Uvh ntfs-3g-2017.3.23-1.el7.x86_64.rpm    //套件名,-U更新

[root@fanhua ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

参数解释:

额外选项: --nosignature //不检验软件包的签名

​ --force //强制安装软件包

      yum reinstall --nodeps           //忽略依赖关系           

软件卸载
#rpm -e 软件名称

​ --force 在安装的时候用(强制覆盖安装)

​ --nodeps 在卸载的时候用(卸载的时候不检查依赖关系)

RPM包安装信息存储到本地RPM数据库中。。。

==查询   
(从本地的rpm数据库)
[root@youngfit ~]# yum -y install httpd        
[root@youngfit yum.repos.d]# rpm -q httpd   //查询指定包是否安装
[root@youngfit ~]# rpm -qa|grep httpd
httpd-tools-2.4.6-90.el7.centos.x86_64
httpd-2.4.6-90.el7.centos.x86_64

[root@youngfit ~]# rpm -ql httpd                        //查询httpd安装的文件      
[root@youngfit ~]# rpm -qf /var/www/html        //查询该文件属于哪个rpm包
[root@youngfit ~]# rpm -qi httpd                        //查询包的信息
[root@youngfit ~]# rpm -qc httpd                //查询某个包安装的配置文件
[root@youngfit ~]# rpm -qd httpd                //查安装的帮助文档
==卸载
[root@youngfit ~]# rpm -e httpd

[root@youngfit ~]# rpm -e httpd --nodeps            !!!!!!!!!!!!!!不检测依赖关系  直接卸载
案例3:安装如下软件包 vsftpd  samba  nfs-utils  httpd  dhcp  postfix  mysql-server  php lftp dos2unix unix2dos tigervnc 

[root@youngfit Packages]# pwd 
/media/cd/Packages

[root@youngfit Packages]# rpm -ivh samba-3.0.33-3.37.el5.i386.rpm samba-common-3.0.33-3.37.el5.i386.rpm 
rpm工具管理软件包总结:
1. 很难解决包依赖关系 
2. 如果某个文件没有,很难知道它由哪个rpm包提供,例如 semanage 或 tree 命令是由哪个包提供?
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容