Linux--软件安装--RPM命令管理

RPM包命名规则和依赖性

RPM包命名规则
httpd-2.2.15-el6.centos.1.i686.rpm
httpd    软件包名
2.2.15    软件版本
15     软件发布的次数
el6.centos   适合的LInux平台
i686     适合的硬件平台
rpm     rpm包扩展名

RPM包依赖性

包全名与包名

  • 包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径
  • 包名:操作已经安装的软件包时,使用包名。其实是搜索/var/lib/rpm/中的数据库

RPM包的安装和卸载

RPM安装
rpm -ivh包全名
选项:
 -i(install)    安装
 -v(verbose)   显示详细信息
 -h(hash)    显示进度
 --nodeps     不检测依赖性

RPM包升级
rpm -Uvh包全名
选项:
 -U(upgrade)    升级

卸载
rpm -e 包名
选项:
 -e(erase)    卸载
 --nodeps     不检测依赖性

RPM包的查询方法

查询是否安装
[[email protected]~]# rpm -q 包名
#查询包是否安装
选项:
  -q        查询(query)
[[email protected]~]# rpm -qa
#查询所有已经安装的RPM包
选项:
  -a        所有(all)

查询软件包详细信息
[[email protected]~]# rpm -qi 包名
选项:
  -i        查询软件信息(information)
  -p        查询未安装包信息(package)

查询包中文件安装位置
[[email protected]~]# rpm -ql 包名
选项:
  -l        列表(list)
  -p        查询未安装包信息(package)

查询系统文件属于哪个RPM包
[[email protected]~]# rpm -qf 系统文件名
选项:
  -f        查询系统文件属于哪个软件包(file)

查询软件包的依赖性
[[email protected]~]# rpm -qR 包名
选项:
  -R        查询软件包的依赖性(requires)
  -p        查询未安装包信息(package)

RPM包的校验和文件提取

RPM包校验
[[email protected]~]# rpm -V 已安装的包名
选项:
  -V        校验指定RPM包中的文件(verify)
Linux--软件安装--RPM命令管理
Linux--软件安装--RPM命令管理

RPM包中文件提取
[[email protected]~]# rpm2cpio 包全名 |\
cpio -idv .文件绝对路径

rpm2cpio
#将rpm包转换为cpio格式的命令
cpio
#是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

[[email protected]~]# cpio 选项<[文件|设备]
选项:
  -i        copy-in模式,还原
  -d        还原时自动新建目录
  -v        显示还原过程