小萌新—> Linux高手系列:包管理

《小萌新 —> Linux高手系列文章》。

今天这篇文章将给大家介绍基于CentOS的包管理。

在Linux操作系统中主要两种形式的包管理形式:

一种形式是压缩包的形式;例如**.tar.gz,这里面就是**的源码,种形式的软件包的安装需要编译再安装。

另外一种形式是二进制的形式,如rpm(redhat package manager),rpm的软件包可以直接安装。

ps:rpm原来是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用,已经成为行业标准。它是通过把源码**.tar.gz编译而来,编译就是把源代码转换成计算机可以认识的二进制文件。

rpm包格式为:

name-version.release.arch.rpm

比如:httpd-2.2.15-59.el6.centos.x86_64.rpm ,在这里,httpd是软件包的包名,2.2.15-59依次是软件包的主发行版本号,次发行版本号和修正号等,el6.centos是软件包适用的操作系统的版本号,x86_64是软件包的架构。

rpm的命令一般都是组合使用的,常用的组合选项有:

rpm -q 查询某个软件包,一般与别的选项组合使用
rpm -qa 查询系统上已安装的所有的软件包
rpm -qf 查询系统中的某个文件是由哪个软件包所生成
rpm -qd 查询一个软件包安装后在系统生成的帮助文件
rpm -ql  查询一个软件包安装后在系统生成文件的列表
rpm -qc 查询一个软件包的配置文件
rpm -qpl 查询一个未安装软件包安装后会在系统生成的文件列表
rpm -qi 查询一个软件包的发行信息
rpm -v  显示一个软件包安装,升级,卸载的过程    
rpm -K 校验一个软件包的私钥是否正确
rpm -U 升级软件包
rpm -f  强制安装,升级或卸载某软件
rpm -e  卸载软件包
rpm -ivh 安装软件包,并显示安装过程

CentOS包管理-yum

在使用rpm进行包管理有一个致命缺点:rpm包有依赖关系,在装一个软件包的时候,往往不知道这个软件包依赖于哪个软件包存在。

如何解决rpm包的依赖性问题?

用yum来解决依赖的问题,yum也是一个命令,也指向一个安装源,我们可以把源的路径写到配置文件里面。

yum(Yellow dog Updater Modified)是CentOS中属于RPM前端软件包管理器,能从指定的服务器中下载RPM包,并自动分析和处理RPM包之间的依赖关系,最后将依次所依赖的软件包都安装了,而无需繁琐的一个一个安装。

yum 的配置文件有2种:

/etc/yum.conf:为所有仓库提供公共配置

/etc/yum.repos.d/*.repo:为仓库的指向提供配置

yum 从这些配置文件中,可以找到对应的仓库地址。

yum客户端的工作原理:

1.yum源配置完成后,yum会到各可用的yum仓库下载元数据到本地,并缓存在/var/cache/yum这个目录下。

2.当管理员想要安装某个软件时,yum会根据具体的操作请求分析缓存在系统本地的元数据,结合系统已经安装的软件包,分析出要安装或升级的软件包的列表。

3.向yum仓库请求分析出的软件包列表中的软件,下载到本地客户端完成安装。

4.本次安装完成后,清除本次安装过程中下载到本地的软件包,以节省硬盘空间。

yum 语法:

yum [options] [command] [package ...]

options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 “yes”),-q(不显示安装的过程)等等;

command:要进行的操作;

package:安装的包名

yum的命令一般也是组合使用的,常用的组合选项有:

yum install xxx  安装xxx软件
yum info xxx 查看xxx软件的信息
yum remove xxx 删除软件包
yum clean       清除缓冲和就的包
yum check-update 检查可更新的rpm包
yum update   更新所有的rpm包
yum update kernel kernel-source 更新指定的rpm包,如更新kernel和kernel source
yum list   列出资源库中所有可以安装或更新的rpm包
yum list mozilla* 列出资源库中特定的可以安装或更新以及已经安装的rpm包
yum list updates  列出资源库中所有可以更新的rpm包
yum list installed  列出已经安装的所有的rpm包
yum list extras   列出已经安装的但是不包含在资源库中的rpm包,即通过其它网站下载安装的rpm包
yum search mozilla  搜索匹配特定字符的rpm包
yum provides xxx   以xxx为关键字搜索包(提供的信息为关键字)

微信号 : TestOps

知乎:@TestOps云层

(0)

相关推荐