29. rpm

光盘文件使用

1. RHEL5(x86_64)光盘结构

Cluster              //集群二进制包
ClusterStorage       //集群文件系统二进制包
Server               //核心服务器的二进制包产品
VT                   //虚拟化二进制包
images                 //引导和驱动程序磁盘映像
isolinux         //图像引导文件


2. 手动挂载光盘(放入光盘)

/dev/cdrom = /dev/sr0           光盘驱动器设备文件
#umount /dev/cdrom        卸载光盘使用
#mount /dev/cdrom /media/    挂载光盘使用
#ls /media/            查看光盘的内容


3. 触发挂载(放入光盘)
默认情况下系统会将光盘按照需求触发挂载到/misc/cd目录

# cd /misc/cd            可以访问光盘数据

RPM软件包管理

扫描二维码关注公众号,回复: 631187 查看本文章


RPM数据库文件

/var/lib/rpm

查询已安装的RPM软件包信息

rpm -q  软件包名称    查询指定包是否安装(精确查询)
rpm -qa            查询系统已经安装所有的软件包
rpm -qa | grep 软件包名称    查询当前系统安装了哪些与软件包名称相关的包
rpm -qi 软件包名称        查询已安装软件包的详细信息
rpm -ql 软件包名称          查询已安装软件包安装到什么地方去了,查询指定包安装后生成的文件列表
rpm -qc 软件包名称        查询软件生成的配置文件
rpm -qd 软件包名称            查询清单中的文档文件
rpm -qf 文件的绝对路径    查询该文件由哪个包产生 ,即使文件被删除,也可以查询



查询某个目录或者文件是由哪个RPM包产生的

rpm -qf 文件的绝对路径    查询该文件由哪个包产生


查询待安装的RPM安装文件

rpm -qpi 完整软件包名称    查询未安装软件的详细信息
rpm -qpl 完整软件包名称    查询未安装软件要安装的文件路径

查询指定包中包含的脚本

rpm -q --scripts PACKAGE_NAME: 查询指定包中包含的脚本
      安装前
          安装后
          卸载前
          卸载后

恢复被误删的程序

删除vi/vim程序后,RPM重装进行恢复

which 命令
rpm -rf /bin/vi /usr/bin/vim rpm -qf /bin/vi /usr/bin/vim cd /misc/cd/Server rpm -ivh --force vim-minimal-7.0.109-7.2.el5.x8\

验证已安装的软件包

rpm -V    软件名
    -Vf 文件路径
    -Va    列出系统中在RPM安装后改动过的所有文件
    S:文件大小
    M:权限或类型
    5:MD5校验和
    D:设备编号
    L:链接数
    U:用户
    G:组
    T:时间




导入官方公钥



验证待安装的软件包
-导入官方公钥,rpm安装时会自动验证
-格式:rpm --import 公钥文件

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

检验来源合法性,及软件包完整性;
加密类型:
    对称:加密解密使用同一个密钥
    公钥:一对儿密钥,公钥,私钥;公钥隐含于私钥中,可以提取出来,并公开出去;
        
    单向:

# ls /etc/pki/rpm-gpg/
    RPM-GPG-KEY-redhat-release
    
rpm -K /PAPT/TO/PACKAGE_FILE
    dsa, gpg: 验证来源合法性,也即验证签名;可以使用--nosignature,略过此项
    sha1, md5: 验正软件包完整性;可以使用--nodigest,略过此项
    
    

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release: 导入密钥文件

或:



安装升级RPM



1、安装/升级RPM软件
rpm -i       安装
    -U      升级  
    -F        升级(老版本未装不安装新版本)
    -v      显示细节信息
    -h      以#显示安装进度,每个#表示2%;
    --force    强制安装   
   --test 测试安装
    -vv: 更详细的过程
rpm -ivh /PATH/TO/PACKAGE_FILE

    --nodeps: 忽略依赖关系;
    --replacepkgs: 重新安装,替换原有安装;
    --force: 强行安装,可以实现重装或降级;



2、升级
rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE: 如果装有老版本的,则升级;否则,则安装;
rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE:如果装有老版本的,则升级;否则,退出;
    --oldpackage: 降级



卸载

rpm -e 软件包名称
如卸载出现specifies multiple packages
可以rpm -e --allmatches --nodeps 软件包名


rpm -e 软件包名称
rpm -e PACKAGE_NAME
    --nodeps
   

依赖关系



提示:error: Failed dependencies:

RPM包的依赖关系
1、解决依赖关系
-先安装/卸载要求的包
-如果RPM包齐全但比较多,乐意用通配符*
2、忽略依赖关系(不推荐)
-可能会导致软件运行异常
-辅助选项--nodeps

rpm -ih bind-chroot-*.rpm
rpm -ih bind-chroot-9.3.6-*

重建数据库


   

rpm
        --rebuilddb: 重建数据库,一定会重新建立;
        --initdb:初始化数据库,没有才建立,有就不用建立;

补充:

rpm命令接软件包全名
    未安装软件查询 rpm -q{pi,pl}
    安装软件          rpm -ivh
rpm命令接软件包名(第一个字段)
    已安装软件的查询 rpm -q{a,i,l,c,d}
    卸载软件        rpm -e
    验证软件        rpm -V{a,f}

更新内核rpm

使用rpm

1.不要使用rpm -U或rpm -F,因为没有升级成功,内核会在下次启动时坏掉

2.使用rpm -i ,会同时安装两个内核,不会破坏原来的内核

使用yum

3.yum update kernel

4.尝试启动新的内核

5.如果新内核有问题会返回旧内核

6.如果新内核没有问题,则可以把旧内核删除yum remove kernel-oldversion



提取包的内容:

 

 

猜你喜欢

转载自www.cnblogs.com/zhongguiyao/p/9029760.html
rpm
今日推荐