换用了rh系的centos7,所以整理记录一下rpm和yum的使用。
【rpm的使用】
rpm命令:
rpm:
数据库:/var/lib/rpm
rpmbuild:
安装、查询、卸载、升级、校验、数据库的重建、验证数据包等工作
包名的格式:
name-version-release.arch.rpm
bind-major-minor.release.arch.rpm
主版本号:重大改进
次版本号:某个子版本发生重大的变化
发型号:修复了部分bug,调整了一点功能
rpm包:
二进制格式
rpm包的作者下载源程序,编译配置完成
bind-9.7.1-1.el7.noarch.rpm(noarch:代表平台无关)
bind-9.7.1-1.el7.ppc.rpm
1、安装:
rpm -i /PATH/TO/PACKAGE_FILE
-h 以#显示进度,每个#代表2%
-v 详细显示
-vv 更加详细的显示
rpm -ivh /PAT/TO/PACKET_FILE
--nodeps: 忽略依赖关系,会导致安装后无法运行
--replacepkgs:重新安装,替换原有安装
--force:强行安装,可以实现重新安装或降级
--test: 测试安装
2、查询(比如zsh-4.2.6-6.el5-i386.rpm)
rpm -q zsh
rpm -q zs*
rpm -qa | grep zsh
rpm -qc PACKAGE_NAME:查询指定包的配置文件
rpm -qi PACKAGE_NAME:查询指定包的信息
rpm -ql PACKAGE_NAME:查询指定包安装后生成的文件路径
rpm -qd PACKAGE_NAME:查询指定包安装的帮助文件
rpm -q --scripts PACKAGE_NAME: 查询指定包中的脚本
rpm -qf /path/to/somefile: 查询指定的文件是由是哪个rpm包安装生成的
如果某rpm包未安装,提前查看一些信息
rpm -qp[i|f|l] /PATH/TO/PACKAGE_FILE
3、升级
rpm -Uvh /PATH/NEW_PACKAGE_FILE:如果装有老版本的,则升级;否则,安装
rpm -Fvh /PATH/NEW_PACKAGE_FILE:如果装有老版本的,则升级;否则,退出
rpm -Uvh --oldpackage PACKAGE_NAME:降级
4、卸载
rpm -e PACKAGE_NAME
--nodeps 忽略依赖关系
5、校验
rpm -V zsh
6、重建数据库
rpm
--rebuilddb:重建数据库
--initdb:初始化数据库
7、校验来源的合法性,及软件的完整性
#ls /etc/pki/rpm-gpg
rpm --import /PATH/TO/PACKAGE_FIFE
rpm -K /PATH/TO/PACKAGE_FILE
dsa,gpg:验证来源的合法性,也及验证签名;可以使用--nosignature,忽略此项
sha1,md5:验证软件包完整性;可以使用--nodigest,忽略此项
【yum的使用】
https://www.cnblogs.com/mchina/archive/2013/01/04/2842275.html
中写得很好了……