本文共 2527 字,大约阅读时间需要 8 分钟。
rpm:RPM全称是Red Hat Package Manager(Red Hat包管理器)。几乎所有的Linux发行版本都使用这种形式的软件包管理安装、更新和卸载软件。rpm有五种基本的操作功能:安装、卸载、升级、查询和验证。但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。可通过rpm -help获取使用帮助
yum: 是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。yum的宗旨是自动化地升级,安装/移除rpm包,收集rpm包的相关信息,检查依赖性并自动提示用户解决。yum的关键之处是要有可靠的repository,即yum是软件的仓库,它包含rpm的header, header包括了rpm的各种信息,包括描述,功能,提供的文件,依赖性等,真是收集了这些header并加以分析,才能自动化地完成余下地任务。(yum可以自动的处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装)获取包的途径
1.系统发行的光盘或发行版官方站点或官方镜像站点(以稳定为主,因此软件版本相对较老)2.程序项目官方站点(版本相对较高)3.第三方组织 例如 Fedora-EPEL: epel 等安装
-i:安装-v: 显示安装过程中的详细信息-replacepkg:重新安装-test: 测试安装,不会真正的执行安装操作升级
-U:如果有较旧版本程序包, 则升级安装;否则执行安装操作-F : 如果有较旧版本程序包,则升级安装;否则停止安装操作卸载
rpm -e file --nodeps 忽略依赖性只删除当前的软件查询
-qa: 查询所有已经安装的包-qi: 显示包的简要信息-ql: 显示包里的文件列表-qc: 只显示包里的配置文件-qd: 显示说明文档-qf: 查看某个文件是由哪个包提供的(后跟文件的路径)-qR: 查看包的依赖关系包来源合法性及完整性的验证:
rpm -import PUBKEY... (导入公钥)rpm -K package_file...(检测软件包来源合法性和完整性)rpm日常用法安装没有依赖包的软件,比如查询一个软件的已安装的rpm包查询已经安装的包组若意外删除某文件,可以利用rpm2cpio来解开rpm包恢复文件
yum客户端
定义: 存放了众多rpm包,以及包的相关元数据的为文件(repodata)配置文件:指向仓库的位置以及各种配置信息,每个yum客户端可以多个可用的yum仓库主配置文件: /etc/yum.conf子配置文件:/etc/yum.repos.d/*.repo yum仓库配置[repo_id] 仓库id具有唯一性 name=仓库名称 (可以不写,默认name为repo_id) baseurl= 仓库路径 例如:https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/ 等 enabled=1|0 设置是否启用仓库,默认启用 gpgcheck=1|0 设置是否启用gpg检查,默认启用 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 配置gpgcheck路径
内置变量
$releasever 当前操作系统的发行主版本号$arch 平台 i486,i586,i686$basearch 基础平台i386, x86_64 yum命令 列出:repolist 列出所有的可用仓库list all|installed|available 列出全部/已安装的/有效的仓库grouplist 列出所有可用的包组 安装install 安装reinstall 重新安装 缓存clean all 清除所有缓存makecache 生成缓存 升级checkupdate 检查可用升级update package_name 如果有多个版本的升级包可用,可以指定具体版本来升级 卸载remove | earse package_name 依赖于指定程序的其他包也会被删除 查询info 查询详细信息search 根据关键字模糊查询包名provides 查询文件由哪个软件包提供 命令历史yum history (方便于执行undo,redo操作)yum的日常用法安装(自动解决软件的依赖问题,并且自动安装依赖的包) 查看一个文件属于哪个包,但是包并未安装查看可用的仓库安装包组(应用yum可以成组安装)删除包组清除缓存rpm和yum的安装,都是在存在rpm包的前提下,如果我们所要的安装的软件没有现有的rpm包,那么我们该如何安装,这个时候我们需要使用源码来安装,以安装httpd的源码包为例:
./configure 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及Makefile.in文件生成Makefile,执行过程中还需要根据提示安装apr-devel,apr-util-devel.pcre-devel三个包
make install 复制文件到相应的路径
安装后的配置,将二进制目录导入至PATH环境变量中,即将/app/apache24/bin写入/etc/profile.d/*.sh下,然后执行。
转载于:https://blog.51cto.com/13866567/2153357