Board logo

标题: rpm、yum、编译安装轻松管理centos7程序包(4) [打印本页]

作者: look_w    时间: 2019-2-18 20:15     标题: rpm、yum、编译安装轻松管理centos7程序包(4)

5.2 升级

    -U:升级或安装

# rpm -q zsh
zsh-4.3.10-7.el6.x86_64
# rpm -Uvh --nodeps zsh-5.1.1-3.fc24.x86_64.rpm
warning: zsh-5.1.1-3.fc24.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 81b46521: NOKEY
Preparing...                ########################################### [100%]
   1:zsh                    ########################################### [100%]
# 此处使用--nodeps的原因是这个版本需要很多依赖关系,所以忽略依赖关系,在生产环境中升级需要安装依赖关系后在升级。

    -F:升级

    组合:-Uvh,-Fvh

    --test

    --nodeps

    --force

    --oldpackage:降级到旧版本;

# rpm -q zsh
zsh-5.1.1-3.fc24.x86_64
# rpm -Uvh --oldpackage /misc/cd/Packages/zsh-4.3.10-7.el6.x86_64.rpm
Preparing...                ########################################### [100%]
   1:zsh                    ########################################### [100%]
# rpm -q zsh
zsh-4.3.10-7.el6.x86_64

    注意:一定不要对内核升级:Linux允许多内核共存,所以可以直接安装多个不同版本内核;

    注意:如果程序包的配置文件安装后曾被修改,升级时,新版本的文件不会覆盖老版本的配置文件,而把新版本的配置文件重命名(加后缀.rpmnew)后保存

5.3 卸载

rpm {-e|--erase} [--allmatches] [--nodeps] [--test]

简单用法:rpm -e PACKAGE_NAME...

# rpm -q zsh
zsh-4.3.10-7.el6.x86_64
# rpm -e zsh
# rpm -q zsh
package zsh is not installed

    --nodeps:忽略依赖关系;

    --test: 测试卸载;dry-run模式;

    --allmatches: 如果一个程序包同时安装多个版本,则此选项一次全部卸载之;

注意:如果程序包的配置文件安装后曾被修改,卸载时,此文件通常不会被删除,而是被重命名(加后缀.rpmsave)后留存;

5.4 查询

rpm {-q|--query} [select-options] [query-options]

    [select-options]

        1、查询某包或某些包是否安装:

            rpm -q PACKAGE_NAME

# rpm -q zsh
zsh-5.1.1-3.fc24.x86_64

        2、查询已经安装的所有包

            rpm -qa PACKAGE_NAME

# rpm -qa zsh
zsh-5.1.1-3.fc24.x86_64
# 或者,grep后面支持正则表达式过滤
# rpm -qa |grep "zhs"

        3、查询某文件是由哪个包安装生成:

            rpm -qf /PATH/TO/SOMEFILE

# rpm -qf /etc/fstab
setup-2.8.14-20.el6_4.1.noarch
# rpm -qf /etc/httpd/conf/httpd.conf
httpd-2.2.15-39.el6.centos.x86_64




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0