Java教程

rpm 手动安装 更新 删除 查询 校验 修复

本文主要是介绍rpm 手动安装 更新 删除 查询 校验 修复,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

rpm 包: 源码编译后的二进制文件.

1, 安装rpm 包
	rpm -ivh 包全名[httpd-2.4.6-95.el7.centos.x86_64.rpm]
	1-1: i install首字母
		 v 显示安装信息
		 h hash进度条
	1-2: 如果需要安装依赖包会在报错中提示应该先安装什么包
	1-3: 如果需要安装依赖的模块[libc.(so).6 带so 的就是模块]
		1-3-1: www.rpmfind.net 中搜索模块名
		1-3-2: 按照操作系统安装他给的包名
		
2, 更新rpm 包
	rpm -Uvh 包全名
	2-1: -i 可用-U 代替
	
3, 删除rpm 包 [rpm 包在创建之初就以将文件默认存放路径写死,包信息写死]
	rpm -e 包名[httpd 简写(系统通过服务名可以找到)]
	
4, 查询
	4-1: rpm -q 包名[httpd]  //如果已安装返回包全名 httpd-2.4.6-95.el7.centos.x86_64 反之 提示 未安装
	4-2: rpm -qa //查询所有已安装的包名
	4-3: rpm -ql 包名[httpd] //查询已安装 通过报名查看相关文件保存位置(/etc/httpd/conf.d)
	4-4: rpm -qlp 包名[httpd]//(常用)查询未安装 通过报名查看相关文件保存位置(/etc/httpd/conf.d)
	4-5: rpm -qf 文件名[/etc/httpd/conf.d] //通过文件名反查 此文件属于哪个包 返回结果为包名(httpd-2.4.6-95.el7.centos.x86_64)
	4-5: rpm -qR 包名[httpd] //包已安装 查询安装httpd服务包都需要依赖哪些包
		4-5-1: 返回结果为依赖包名称
	4-6: rpm -qRp 包全名[zip-3.0-11.el7.x86_64.rpm]//(常用)包未安装 查询安装此包需要先安装哪些依赖包
	4-7: rpm -qi 包名[httpd] //查询已安装 查询包[软件]信息
	4-8: rpm -qip 包全名[zip-3.0-11.el7.x86_64.rpm|/目录/zip-3.0-11.el7.x86_64.rpm]//查询未安装 查询包[软件]信息
	4-19: q 查询 (query)
		  R 查询软件包的依赖 (requires)
		  p 查询未安装包信息 (package)
		  i 查询软件信息(infomation)
		  l 列表 (list) //软件文件目录绝对路径列表
		  a 所有 (all) //与q 连用 查询已安装的所有包
		  f 查询系统文件属于哪个软件包 (file)

5,校验 (8个验证信息)
	rpm -V 已安装的包名
	5-1: 校验没问题没有任何提示,否则显示此类信息[ S.5....T.  c /etc/httpd/conf.d/welcome.conf ]
		5-1-1: S 文件大小是否改变
			   M 文件类型或文件权限(rwx)是否改变
			   5 文件MD5 校验是否改变(可以看成文件内容是否改变)
			   D 设备中,从代码是否改变
			   L 文件路径是否改变
			   U 文件属主(所有者)是否改变
			   G 文件属组是否改变
			   T 文件时间修改时间是否改变
	5-2:[先通过rpm -qf查看需要哪个包] rpm包中提取文件(比如/bin/ls 被删除[ls不可用] 就可用此方法修复)
		rpm2cpio 包全名[zip-3.0-11.el7.x86_64.rpm] | \ cpio -idv .文件绝对路径[/bin/ls]
		5-2-1: rpm2cpio 将rpm包转换成cpio格式的命令
			   cpio 一个标准工具 用于创建软件档案文件和从档案文件中提取文件
			   \ 换行符
		5-2-2: cpio -i 从文件中提取数据
			   cpio -d 自动新建目录
			   cpio -v 显示过程
		5-2-3: 提取完之后会在当前目录中生成 5-2 文件绝对路径的目录. cd 进入, 通过cp 把文件拷贝到缺失位置 即可
	5-3: V 校验指定RPM包中的文件 (verify)
		 
		 
	
	
这篇关于rpm 手动安装 更新 删除 查询 校验 修复的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!