rpm 详解

 rpm 包详解

程序包的命名格式:name-VERSION.tar.gz

拆包:主包和分包

主包:name-VERSION-release.arch.rpm

支包:name-function-VERSION-release.arch.rpm

 

注意:程序包之间有时会存在依赖关系,依靠前端工具解决依赖关系

yum

Rhel系列系统上的rpm包管理工具

apt-get

debian/ubuntu包管理前端工具

zipper

suse的rpm包管理工具

dnf

Fedora 22+系统上的rpm包管理前端工具

 

程序包管理器:位置/var/lib/rpm/

 

 

rpm命令:rpm[OPTION]+PACKETFILE

*安装:-i/–install

*升级:-U/–update,

         -F/–freshen

*卸载:-e/–erase

*查询:-q/–query

*校验:-V/–verify

*数据库维护:–builddb,–initdb

 

 

rpm安装

rpm
{-i|–install} [install-options] PACKAGE_FILE …

rpm -ivh +PACKETFILE

-ivh:i是安装;v是显示详细信息(vv)更详细的输出;h输出进度条,每个#表示2%进度

       –test:测试安装,检查并报告依赖关系及冲突消息等

       –nodeps:忽略依赖关系;(不建议)

       –replacepkgs:重新安装

注意:rpm包可以自带脚本

perinstall

安装过程开始之前运行的脚本

%pre

postinstall

安装过程完成之后运行的脚本

%post

preuninstall

卸载过程真正开始执行之前运行的脚本

%pre

postuninstall

卸载过程完成之后运行的脚本

%postun

 

 

rpm升级:

rpm {-U|–upgrade} [install-options]
PACKAGE_FILE …

rpm {-F|–freshen} [install-options]
PACKAGE_FILE …

-U存在旧包,想删除旧包安装新包就用-Uvh

-F在旧包的基础上升级,就用-Fvh

 

rpm降级:–oldpackage

 

注意:1、不要对内核做升级,Linux支持多内核版本并存,因此,直接安装新版本内核

         2、如果某原程序包的配置文件安装后曾被修改过,升级时,新版本的程序提供的同一个配置文件不会覆盖原有版本的配置文件,而是把新版本的配置文件重命名(FILENAME.rpmnew)后提供

 

 

rpm卸载

rpm -e  PACKGE_NAME..

       –allmatches 卸载所有匹配指定名称的程序包的各种版本

       –nodeps 忽略依赖关系

       –test 测试卸载

 

 

rpm查询

rpm +OPTION +PACKGE_NAME

       -qa 查询所有安装的包

       -qf 查询所有已经安装过的包

       -qp 用于实现对未安装程序包的查询

       -ql  查询程序安装生成的多有文件列表

       -qi 查询软件包的详细信息

       -qc 查询指定的程序包提供的配置文件

       -qd 查询指定的程序包提供的文档

       -q
–provides
列出指定的程序包提供的所有的CAPABILITY

       -qR 查询指定的程序包的依赖关系

 

 

rpm校验

rpm
-V +PACKAGE_NAME

       如未导入则导入公钥:rpm –import  /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-(6/7)

 

 

数据库的重建

rpm {–initdb|–rebuilddb}
[–dbpath DIRECTORY] [–root DIRECTORY]

       –initdb:初始化数据库,当前无任何数据库可实始化创建一个新的;当前有时不执行任何操作;

       –rebuilddb:重新构建,通过读取当前系统上所有已经安装过的程序包进行重新创建;

rpm 详解rpm 详解

 rpm 详解

原创文章,作者:N27_flypig,如若转载,请注明出处:http://www.178linux.com/84871

赞 (0)
N27_flypigN27_flypig
上一篇 2017-08-17 18:28
下一篇 2017-08-19 07:17

相关推荐

  • mongodb 分片集群搭建

    集群架构 本次实验部署3台主机node1、node2、node3,2个副本集db1、db2作为分片,3台主机均有1个配置库实例 操作步骤 安装 node1上执行如下命令,完成后拷贝/mongodb目录到node2、node3 useradd mongodb   mkdir -p /mongodb/data/{…

    Linux干货 2016-11-06
  • 马哥教育网络班21期-第四周课程练习

    Do one thing at a time,and do well. 小僧近期忙的去尿尿的时间都要挤出来…..! 无人能理解 zZzz 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 编辑/etc/group文件,添加组hadoop。 手动编辑/etc/pass…

    Linux干货 2016-07-29
  • Linux用户和组的基础概念

    用户,组和权限管理   Multi-tasks,  Multi-Users 每个使用者:    用户标识,密码:    认证:Authentication    授权:Authorization    审计:Audition    3A 组…

    Linux干货 2016-12-21
  • 创建,扩展,缩减LVM2及快照

    相关概念     lvm英文 Logical Volume Manager,逻辑卷管理类似于raid,但又有别于raid, 它是能够将一个或多个底层块设     备组织成一个逻辑设备的模块不具备容错功能,任一设备损坏或分区损坏,对数据是致命的;它主要有三个部分…

    Linux干货 2016-02-14
  • 马哥教育21期网络班—第12周课程+练习—-LAMP练习

    1、请描述一次完整的http请求处理过程; (1) 建立或处理连接:接收请求或拒绝请求 (2) 接收请求: 接收来自于网络的请求报文中对某资源的一次请求的过程; 持久连接:接收到请求不会断开这个请求 非持久连接:一个连接请求断开一次 并发访问响应模型(Web I/O): 单进程I/O结构:启动一个进程处理用户请求,而且一次只处理…

    Linux干货 2016-09-26
  • vim编辑器

    一、vim简介    vi: Visual Interface,文本编辑器     文本: ASCII, Unicode     文本编辑种类:         行编辑器: sed…

    Linux干货 2016-08-10