> RedHat >

RHCE7认证学习笔记14——安装和更新软件

RHCE7认证学习笔记14——安装和更新软件

1、RPM包的名称定义
        vsftpd.3.0.2- 9.  el7.    x86_64.rpm
        包名      版本    发行版本    架构

    使用 rpm -qa 可以列出当前系统所有安装的包,使用rpm -ivh安装包

2、安装RPM安装包的实质

    安装RPM包的实质是将包里面的相对应的文件拷贝复制到响应的根目录下面:

    这里以Vsftpd这个RPM包为例子,使用以下命令解压出安装包的内容:
        可以看到vsftpd的rpm包里面生成了etc,usr,var三个目录,安装vsftpd的时候,将把这三个目录复制到对应的etc,usr,var下面

[root@linuxidc xx]# ls 
vsftpd-3.0.2-9.el7.x86_64.rpm 
[root@linuxidc xx]# rpm2cpio vsftpd-3.0.2-9.el7.x86_64.rpm |cpio -id 
707 blocks 
[root@linuxidc xx]# ls 
etc  usr  var  vsftpd-3.0.2-9.el7.x86_64.rpm

    通过rpm -ql 可以查看一个包安装的所有的内容和路径:

3、RPM命令的常用命令选项:

    查询:

    -qa:查看系统所有已安装包;

    -ql:查看安装包的安装内容和路径;

    -qc:查看安装包的配置文件;

    -qd:查看安装包的帮助文档;

    -qi:查看安装包;

    -qf:查看某文件是由哪个安装包生成的;

    -qip:查看安装包的信息和安装路径

 

    -Uvh:更新:所谓的更新就是卸载旧的,再安装新包,普通的软件包,在系统中不能多版本共存,但是内核可以多版本共存;所以安装内核的时候,一般要使用rpm -ivh,千万不要使用Uvh,这样就不会卸载旧的内核,多内核共存;安装好内核之后,再卸载旧内核;

    -e:卸载:

    -V 报名:可以查看安装包生成的文件是否被修改过

    --force选项:一般是包已经安装的情况下,但是又需要重新安装,可以使用--forece选项

    --nodeps:忽略安装包的依赖;

4、安装包如果使用rpm -ivh直接安装的话,那么会生成一些脚本,通过rpm -qa 可以查询到该包装包,如果是通过直接将安装文件拷贝覆盖到对应文件夹的方式安装,则不能通过 rpm -qa 查询到
    查看安装包执行了哪些脚本,使用--scripts选项:

[root@linuxidc etc]# rpm -q --scripts vsftpd

5、RMP包的数字签名
    哈希函数加密的特点是加密后的内容长度是一样的,无论输入的内容长度。

数字签名,一般是私钥加密,公钥解密;

使用rpm -K命令可以查看包的数字签名是否正确,但是前提是你已经导入了红帽的公钥,要不然还是会提示MD5不匹配;

[root@linuxidc xx]# rpm -K vsftpd-3.0.2-9.el7.x86_64.rpm  
vsftpd-3.0.2-9.el7.x86_64.rpm: RSA sha1 ((MD5) PGP) md5 NOT OK (MISSING KEYS: (MD5) PGP#fd431d51)

 如果这时候安装包,会提示

导入红帽公钥:
[root@linuxidc xx]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-RedHat-release

这时候再验证rpm包,md5验证OK:
[root@linuxidc xx]# rpm -K vsftpd-3.0.2-9.el7.x86_64.rpm  
vsftpd-3.0.2-9.el7.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

6、配置Yum安装源

    配置文件放在/etc/yum.repos.d/路径下:
    配置文件以.repo结尾,格式如下所示:
[mine]源名称 
name=my repo  名字 
baseurl=  源url地址  
enable=1    是否启用 
gpgcheck=0    是否启用数字签名验证 
gpg key=file:///



(责任编辑:IT)