首页 > 代码库 > RHCE7学习笔记12-安装和更新软件

RHCE7学习笔记12-安装和更新软件

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@clz xx]# ls
vsftpd-3.0.2-9.el7.x86_64.rpm
[root@clz xx]# rpm2cpio vsftpd-3.0.2-9.el7.x86_64.rpm |cpio -id
707 blocks
[root@clz 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@clz etc]# rpm -q --scripts vsftpd


5、RMP包的数字签名

    哈希函数加密的特点是加密后的内容长度是一样的,无论输入的内容长度。

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

    

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

    

[root@clz 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@clz xx]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


     这时候再验证rpm包,md5验证OK:

[root@clz 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:///


本文出自 “平凡之路” 博客,请务必保留此出处http://linjohn.blog.51cto.com/1026193/1603877

RHCE7学习笔记12-安装和更新软件