zoukankan      html  css  js  c++  java
  • 软件包管理-rpm

    1、软件包分类

    ◆源码包

    >脚本安装包

     

    ◆二进制包(RPM包、系统默认包)

     

    2、源码包

    源码包的优点是:

    ◆开源,如果有足够的能力,可以修改源代码

    ◆可以自由选择所需的功能

    ◆软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高

    ◆卸载方便

     

    源码包的缺点

    ◆安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误

    ◆编译过程时间较长,安装比二进制安装时间长

    ◆因为是编译安装,安装过程中一旦报错新手很难解决

     

    3、RPM包

    二进制包的优点

    ◆包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载

    ◆安装速度比源码包安装快的多

     

    二进制包缺点:

    ◆经过编译,不再可以看到源代码

    ◆功能选择不如源码包灵活

    ◆依赖性

     

     

    1、RPM包命名原则

    httpd-2.2.15-15.el6.centos.1.i686.rpm

    Httpd

    软件包名

    2.2.15

    软件版本

    15

    软件发布的次数

    el6.centos

    适合的Linux平台

    i686

    适合的硬件平台

    Rpm

    rpm包扩展名

     

     

    2、RPM包依赖性

    ◆树形依赖:a>b>c

    ◆环形依赖:a>b>c>a

    ◆模块依赖:模块依赖查询网站:

    www.rpmfind.net

    1、包全名与包名

    ◆包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径

    ◆包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm/中的数据库

     

    2、RPM安装

    rpm -ivh包全名

    选项:

    -i     (install)

    安装

    -v   (verbose)

    显示详细信息

    -h    (hash)

    显示进度

    -nodeps

    不检测依赖性

     

    3、RPM包升级

    rpm  -Uvh   包全名      //此处u大写

    选项:

    -U(upgrade)升级

     

    3、卸载

    rpm  -e   包名

    选项:

    -e(erase)

    卸载

    -nodeps

    不检查依赖性

     

     

    1、查询是否安装

    [root@localhost~]#rpm -q包名

    #查询包是否安装

    选项:

    -q

    查询(query)

    [root@localhost~]#rpm -qa

    #查询所有已经安装的RPM包

    选项:

    -a

    所有(all)

     

     

    2、查询软件包详细信息

    [root@localhost~]#rpm  -qi   包名

    选项:

    -I

    查询软件信息(information)

    -p

    查询未安装包信息(package)

     

     

    3、查询包中文件安装位置

    [root@localhost~]#rpm -ql包名

    选项:

    -l

    列表(list)

    P

    查询未安装包信息(package)

     

     

    4、查询系统文件属于哪个RPM包

    [root@localhost~]#rpm  -qf系统文件名

    选项:

    -f

    查询系统文件属于哪个软件包(file)

     

     

     

    5、查询软件包的依赖性

    [root@localhost~]#rpm -qR包名

    选项:

    -R

    查询软件包的依赖性(requires)

    -p

    查询未安装包信息(package)

     

     

    1、RPM包校验

    [root@localhost~]#rpm  -V  已安装的包名

    选项:

    -V

    校验指定RPM包中的文件(verify)

     

    验证内容中的8个信息的具体内容如下:

    S

    文件大小是否改变

    M

    文件的类型或文件的权限(rwx)是否被改变

    5

    文件MD5校验和是否改变(可以看成文件内容是否改变)

    D

    设备的中,从代码是否改变

    L

    文件路径是否改变

    U

    文件的属主(所有者)是否改变

    G

    文件的属组是否改变

    T

    文件的修改时间是否改变

     

     

     

    2、RPM包中文件提取

    [root@localhost~]#rpm2cpio  包全名  |

    cpio-idv.文件绝对路径

     

    rpm2cpio

    #将rpm包转换为cpio格式的命令

     

    cpio

    #是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

     

    [root@localhost~]#cpio  选项 <[文件|设备]

    选项:

    -i

    copy -in模式,还原

    -d

    还原时自动新建目录

    -v

    显示还原过程

     

    [root@localhost ~]#rpm-qf /bin/ls

    #查询ls命令属于哪个软件包

    [root@localhost~]#mv /bin/ls/tmp/

    并造成1s命令误删除假象

    [root@localhost~]#rpm2cpio /mnt/cdrom/Packages/coreutils-

    8.4-19.el6.i686.rpmlcpio-idv./bin/ls

    #提取RPM包中1s命令到当前目录bin/ls下

    [root@localhost ~]#cp /root/bin/ls/bin/

    #s命令复制会/bin/目录,修复文件丢关

     

  • 相关阅读:
    NOIP赛前集训备忘录(含每日总结)(日更?。。。)
    饮一碗鸡汤,换我前进的力量(持续更新......)
    各种用来学习的东西总结
    [FJOI2007]轮状病毒 题解(dp(找规律)+高精度)
    洛谷P1823 [COI2007] Patrik 音乐会的等待(单调栈+二分查找)
    [CQOI2012]模拟工厂 题解(搜索+贪心)
    [CQOI2014]数三角形 题解(组合数学+容斥)
    洛谷P2507 [SCOI2008]配对 题解(dp+贪心)
    洛谷P1484 种树&洛谷P3620 [APIO/CTSC 2007]数据备份 题解(堆+贪心)
    洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈)
  • 原文地址:https://www.cnblogs.com/xbycf/p/12389563.html
Copyright © 2011-2022 走看看