• Linux学习笔记——软件包管理


    1.RPM包的管理

    RPM软件包的一个例子:

    sudo-1.7.2p1-5.el5.i386.rpm

    这个rpm包名包括软件名sudo,版本号1.7.2p1,发行号5.el5,和硬件平台i386

    (1)安装

    挂载光盘:

    mkdir  /mnt/cdrom

    mount  /dev/cdrom  /mnt/cdrom

    # rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm

    -ivh是可选的,一般来说i是必选的,v表示显示安装信息,h表示用#表示安装进度

    在CentOs光盘中,包含了所有核心rpm的二进制包,可以使用 ls | grep sudo命令来查找sudo安装包

    几个相关的命令:

    rpm -q sudo          查询sudo工具是否已经安装
    rpm -qa | grep sudo  查询与sudo相关的所有软件包

    其它安装选项:

    --excludedocs       不安装软件包中的文档文件

    --prefix PATH         将软件包安转到有PATH指定的路径下

    --test     只对安装进行测试,并不实际安装

    rpm -ivh --excludedocs sudo       这里的--excludedocs有两个--

    对于 --prefix PATH没有多少意义,因为大多数rpm安装包不允许指定安装路径

    A.覆盖安装

    当使用rpm -ivh安装软件提示如下信息时:

    package sudo-1.7.2p1-5.el5.i386 is already installed

    如果想覆盖安装该软件包,可以在命令行中使用 --replacekgs 选项

    B.文件冲突

    如果要安装的软件包有一个文件已经在安装其他软件包时安装,会出现以下错误信息:

    #rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm

    conflicts with file from bark-3.2-11

    sudo-1.7.2p1-5.el5.i386.rpm cannot be installed

    如果想要RPM忽略该错误信息,可以使用 --replacefiles 命令行选项

    C.未解决依赖关系

    RPM软件包可能依赖于其它软件包,在安装了特定软件包之后才能安装该软件包。

    #rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm

    failed dependencies:

    sudo is needed by bark-3.2-11

    你必须安装完所依赖的软件包,才能解决这个问题,强制安装可以使用 --nodeps 选项


    (2)卸载

    # rpm -e sudo

    注:a.如果其它软件包有依赖关系,卸载时会产生提示信息,可使用-nodeps强行卸载

    b.rpm -e sudo    这里写的是软件名sudo,而不是软件包名称


    (3)升级

    #rpm -Uvh sudo-1.7.2p1-5.el5.i386.rpm

    注:U是大写的

    下面给出几个RPM包管理的常用命令:

    命令 功能
    rpm -qf 查询文件隶属的软件包
    rpm -qi、rpm -qip 查询软件包信息
    rpm -ql、rpm -qlp 查询软件包安装文件
    rpm -qd 查询软件包帮助文档
    rpm -qc 查询软件包配置文件

    a. rpm -qi是查看已经安装的软件的信息,而-qip是查询没有安装的软件包的信息;

    b. rpm -qi 软件名      rpm -qip 软件包名

    c. rpm -ql sudo       查看一个软件在系统安装了哪些文件

    d. rpm -qlp 包名      查看一个将要安装的软件需要在哪些目录安装文件

    e. rpm -qa | grep vim    查询已安装的软件包


    2.YUM包管理

    使用yum的好处在于,它不仅能自动解决软件包之间的依赖关系,还能很方便的进行软件升级。

    下面是常见的yum管理命令:

    命令 功能
    yum install 安装
    yum check-update 检测升级
    yum update 升级
    yum list 软件包查询
    yum info 软件包信息
    yum remove 卸载
    yum -help、man yum 帮助


  • 相关阅读:
    【hdu 4135】Co-prime
    【cdoj 1544】当咸鱼也要按照基本法
    【SRM 717 DIV2 C】DerangementsDiv2
    【codeforces 821E】Okabe and El Psy Kongroo
    【SRM 717 div2 B】LexmaxReplace
    【SRM 717 div2 A】 NiceTable
    Network architecture for minimalistic connected objects
    C# 委托的理解
    50条超精辟的经典语录:哗众,可以取宠,也可以失宠!
    50条超精辟的经典语录:哗众,可以取宠,也可以失宠!
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3362248.html
Copyright © 2020-2023  润新知