在redhat上,rpm软件包放在/dev/cdrom下,在cdrom目录下有Cluster(与群集相关的包)、Clusterstorage(与存储相关的包)、Sercer(与服务相关的包)、VT(与虚拟化相关的包)、p_w_picpaths和isolinux(与光盘引导相关)这几个目录,而Server目录下的软件包是我们经常使用的。

一般情况下我们会使用rpm –ivh安装rpm包,其中 –i参数可理解为installed;-v参数为显示详细信息;-h为显示进度条。

rpm安装mysql制定安装位置 rpm安装到指定目录_服务器

另外还有几条常用的的命令参数:

rpm –qa 查询所有的rpm包

rpm –qi 查询已安装包的详细信息**-qi参数后跟的是名字而不是完整的包名

rpm –ql 查询rpm包安装位置信息

rpm –qf查询文件是属于哪个rpm包

rpm –qip 查询未安装包的详细信息**-qip参数后跟的是完整的包名和路径

rpm –qlp 查询未安装包的内容**-qlp参数后跟的是完整的包名和路径

在安装的时候还会遇到一些问题,比如安装的时候有某个文件已经存在,系统就会报错,这时候可以用rpm--replacefiles命令来覆盖文件;如果我们要安装一个软件包组的话,为了避免交互,我们可以使用rpm--replacepkgs;如果安装软件包的时候想指定安装路径,可以用rpm--prefix;如果需要安装有依赖关系的包可以用rpm--nodeps直接安装**安装后不能使用**

rpm –ivh可以安装没有依赖关系的rpm包,而对于有依赖关系的rpm–ivh是不能安装的,像下面这种情况。

rpm安装mysql制定安装位置 rpm安装到指定目录_客户端_02

对于这种情况我们可以使用yum来解决,而对于Red Hat Enterprise 5.0以后实现软件包的部署是基于网络的,所以可以把yum理解为客户端-服务器形式。

rpm安装mysql制定安装位置 rpm安装到指定目录_rpm安装mysql制定安装位置_03

如上图所示,提供安装文件的为yum服务器,上面有放置安装文件的几个“仓库”,网络中的一个或多个yum客户端可以通过FTP、HTTP、NFS等网络协议访问yum服务器,因此yum服务器也必须是FTP、HTTP、NFS等的应用服务器。

yum实现过程:

在要成为yum服务器的linux主机上安装ftp,使其成为ftp服务器。登陆ftp服务器会发现处在 / 下, / 下还有一个pub目录,这个pub目录其实就是主机/var/ftp/pub。那我们可以把所有的软件包放在主机/var/ftp目录下,方便yum客户端的访问。

rpm安装mysql制定安装位置 rpm安装到指定目录_客户端_04

通过修改/etc/yum.repos.d/*.repo来指明yum服务器的所有信息。

rpm安装mysql制定安装位置 rpm安装到指定目录_rpm安装mysql制定安装位置_05

在yum客户端上查看yum服务器上都有那些“仓库”:

rpm安装mysql制定安装位置 rpm安装到指定目录_rpm包_06

现在就可以安装有依赖关系的软件包了:

rpm安装mysql制定安装位置 rpm安装到指定目录_rpm包_07

rpm安装mysql制定安装位置 rpm安装到指定目录_rpm包_08

rpm安装mysql制定安装位置 rpm安装到指定目录_服务器_09

在yum服务器上如果有新上传的rpm包的话是不能被识别的,必须更新“仓库”下的comps-rhel5-server-core.xml把新上传的rpm包信息缓存到文件中,使用createrepo –g 命令更新(需要安装createrepo-0.4.11-3.el5.noarch.rpm)。*yum clean all清除缓存文件

如果要安装没有redhat数字签名的rpm包的话,使用—nogpgcheck不进行数字签名检测。

上面介绍的这种叫网络yum,可以为网络中的多台yum客户端提供下载安装。我们也可以把一台linux主机既作为服务器又作为客户端,这种又叫做本地yum。

rpm安装mysql制定安装位置 rpm安装到指定目录_rpm安装mysql制定安装位置_10

yum install 安装rpm包

yum repolist 能识别的仓库有哪些

yum list all列出所有软件包

yum list installed列出已安装软件包

yum list Available列出未安装软件包

yum Info查看软件包信息 *后跟-y选项可以避免交互

yumremove 卸载软件*后跟-y选项可以避免交互

yum grouplist查看包组

yum groupinfo查看包组信息

yum groupinstall 安装包组*组名中有空格的话要用双引号引起来

yum groupremove 卸载包组

卸载:

卸载使用rpm–e 

升级:

升级可以使用rpm –Fvh*只能完成升级

rpm –Uvh*能完成升级和安装

校验:

校验是否发生改变用rpm–V

 

 


转载于:https://blog.51cto.com/windowsemo/1259692