• LINUX安装 RPM与YUM


    1 Linux软件安装概述

    安装程序的方式:

    • 通用二进制格式:直接解压压缩文件,就可以使用。但一定要注意安装平台。
    • 软件包管理器:如RPM。
    • 软件包管理器的前端工具:如YUM。
    • 源代码编译。

    1 1.1 软件包概述

    软件包的组成部分:

    • 二进制程序,位于 /bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin 等目录中。
    • 库文件,位于 /lib, /usr/lib, /usr/local/lib 等目录中。Linux中库文件以 .so(动态链接库)或 .a(静态链接库)作为文件后缀名。
    • 配置文件,位于 /etc 目录中。
    • 帮助文件:手册, README, INSTALL (/usr/share/doc/)

    在没有软件包管理器之前,安装程序,卸载程序是非常繁杂的。 

    软件包管理工具的特性:

    • 文件清单
    • 文件放置路径
    • 提供的功能说明
    • 依赖关系

    软件包管理器内部有一个数据库,其中记载着程序的基本信息,校验信息,程序路径信息等。 

    2 RPM

    RPM早期被称为RedHat Package Manager,但由于目前RPM非常流行,且已经成为Linux工业标准。所以RPM现在又被称为RPM is Package Manager。

    RPM管理支持事务机制。增强了程序安装卸载的管理。

    RPM的功能:打包、安装、查询、升级、卸载、校验、数据库管理。 

    2 2.1 RPM的缺点

    由于Linux中的程序大多是小程序。程序与程序之间存在非常复杂的依赖关系。RPM无法解决软件包的依赖关系。 

    3 2.2 RPM包

    用RPM工具可以将二进制程序进行打包,包被称为RPM包。RPM包并不是跨平台的。RedHat的RPM包与SUSE的RPM包不能混用。实际上RedHat的安装,初始软件也都是使用RPM包进行安装的。

    源程序的命名规范name-version.tar.{gz|bz2|xz}

    版本号:major.minor.release

    例:bash-4.3.1.tar.xz

    RPM包的命名规范name-version-release.os.arch.rpm

    name:程序名称。

    version:程序版本号。

    release(发行号):用于标识RPM包本身的发行号,与源程序的release号无关。

    os:即说明RPM包支持的操作系统版本。如el6(即rhel6)、centos6、el5、suse11。

    arch:主机平台。如i686、x86_64、amd64、ppc(power-pc)、noarch(即不依赖平台)

    例:bash-4.3.2-5.el6.x86_64.rpm

    3.1 RPM分包

    在把二进制文件打包时,将主要功能打入主包。将辅助功能打入分包。分包在需要的情况下安装,若不需要就可以不安装。

    • 主包:核心包。
    • 分包:又称为支包。

    3.2 获取需要的RPM包

    互联网中RPM常用站点:

    http://mirrors.sohu.com

    http://rpmfind.net

    http://rpm.pbone.net/

    3.3 epel

    epel是为RedHat提供扩展的RPM包。这些包是Linux安装盘中没有的。该项目目前由Fedora维护。

    例:使用网易镜像站查看epel。

    注意:优先使用Linux光盘中的包。其次考虑epel中的包。尽量不要使用来路不明的RPM包。

    3.4 RPM包的验正机制

    RPM可以验证来源的合法性、软件包的完整性。

    4 2.3 RPM命令的使用

    RPM常用选项:

    -i:表示安装。

    -v, -vv, -vvv:表示详细信息。

    -h:以"#"号显示安装进度。

    -q:查询指定包名。

    -e:卸载指定包名。

    -U:升级软件,若未软件尚未安装,则安装软件。

    -F:升级软件。

    -V:对RPM包进行验证。

    --nodeps:忽略依赖关系。

    --query:查询指定包名。同-q选项。

    --hash:同-h。

    --install:表示安装,同-i选项。

    --test:仅作测试,不真正执行,可用于测试安装,测试卸载。

    --replacepkgs:重新安装。替换原有的安装。

    --force:忽略软件包及文件的冲突。

    --initdb:新建RPM的数据库。

    --rebuilddb:重建RPM的数据库。

    --percent:以百分比的形式输出安装的进度。

    RPM包的查询:

    rpm -q:查询某一个RPM包是否已安装

    rpm -qi:查询某一个RPM包的详细信息

    rpm -ql:列出某RPM包中所包含的文件。

    rpm -qf:查询某文件是哪个RPM包生成的。

    rpm -qa:列出当前系统所有已安装的包

    安装或卸载时,可能出现如下类似警告信息:warning:/etc/sysconfig/named created as /etc/sysconfig/named.rpmnew

    该警告信息表示:rpm的配置文件被另存为了一份文件。

    4.1 安装RPM包

    命令格式:rpm -i /PATH/TO/RPM_FILE

    一般组合起来使用:-ivh

    命令格式:rpm -ivh PATH/TO/RPM_FILE

    4.2 卸载RPM包

    命令格式:rpm -e 包名

    4.3 查询RPM相关信息

    结合-q选项,RPM提供了许多种查询信息的方式。

    命令格式:rpm -q 包名

    命令格式:rpm --query 包名

    查询所有已经安装包:rpm -qa

    1、rpm包安装的,可以用rpm -qa看到,如果要查找某软件包是否安装,用 rpm -qa | grep "软件或者包的名字"。

    2、以deb包安装的,可以用dpkg -l能看到。如果是查找指定软件包,用dpkg -l | grep "软件或者包的名字";

    3、yum方法安装的,可以用yum list installed查找,如果是查找指定包,命令后加 | grep "软件名或者包名";

    4、如果是以源码包自己编译安装的,例如.tar.gz或者tar.bz2形式的,这个只能看可执行文件是否存在了,

    查询所有已安装的软件包: rpm -qa 或者 rpm -qa | more (分屏显示)

    查询文件隶属的软件包: rpm -qf

    查询软件包信息: rpm -qi , rpm -qip

    查询软件包安装文件: rpm -ql

    查询软件包帮助文档: rpm -qd

    查询软件包配置文件: rpm -qc



    作者:夜郎西
    链接:https://www.zhihu.com/question/382649994/answer/1107285200
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    yum针对centos软件包操作常用命令

    1、$yum list installed //列出所有已安装的软件包
    1.使用YUM查找软件包 
    命令:yum search 
    2.列出所有可安装的软件包 
    命令:yum list 
    3.列出所有可更新的软件包 
    命令:yum list updates 
    4.列出所有已安装的软件包 
    命令:yum list installed 
    5.列出所有已安装但不在 Yum Repository 内的软件包 
    命令:yum list extras 
    6.列出所指定的软件包 
    命令:yum list 
    7.使用YUM获取软件包信息 
    命令:yum info 
    8.列出所有软件包的信息 
    命令:yum info 
    9.列出所有可更新的软件包信息 
    命令:yum info updates 
    10.列出所有已安装的软件包信息 
    命令:yum info installed 
    11.列出所有已安装但不在 Yum Repository 内的软件包信息 
    命令:yum info extras 
    12.列出软件包提供哪些文件 
    命令:yum provides

    检查升级 yum check-update

    卸载 yum remove

    帮助 yum -help/man yum

     

    显示所有仓库

    命令:yum repo list all 

    显示禁用的仓库

    命令:yum repo list enabled 

    显示启用的仓库

    命令:yum repo list disabled 

    显示软件包的摘要信息

    命令格式:yum info 包名

    类似于rpm -qi 包名 ,yum info没有rpm -qi显示的详细全。但可以显示出安装状态(Installed,Available)

    参考来源:https://www.cnblogs.com/shijiaqi1066/p/3843955.html

  • 相关阅读:
    一个简单的CI分页类
    php版给UEditor的图片在线管理栏目增加图片删除功能
    PHP 中获取文件名及路径
    session共享
    linux进阶之Tomcat服务篇
    Linux进阶之环境变量文件/etc/profile、/etc/bashrc、/etc/environment
    shell应用之简单计算器
    Linux进阶之日志管理
    Linux进阶之LAMP和LNMP动态网站搭建
    linux进阶之子网划分
  • 原文地址:https://www.cnblogs.com/niewd/p/15631734.html
Copyright © 2020-2023  润新知