一个编译好的二进制程序应用文件的组成部分有二进制文件、库文件、配置文件、帮助文件,用户在安装时设置繁琐,而且在用户升级、卸载等操作时更为麻烦。为了提升使用效率及自动简化操作,这就迫在眉睫的需要有一款程序包管理器。。
程序包管理器的主要功能它到底有哪些呢?它的主要功能是将编译好的应用程序的各组成文件打包一个或多个程序包文件,从而方便快捷地实现程序包的安装、卸载、查询、升级和校验等管理操作。而现在主要有四种主流的程序包管理器:(1)Debian开发的程序包管理器,程序包管理器叫做dpt程序包管理器,(2)RedHat公司的rpm程序包管理器,(3)Gentoo公司的程序包管理器 (4)ArchLinux程序包管理器。而这四个主流的程序包管理中的红帽公司的程序包管理器已经成为了Linux程序包的工业标准,所以今天的主角是红帽公司的rpm管理器。
我们今天会简单的介绍一下CentOS7系统上的rpm程序包管理器上的命令及使用。主要分为六部分:安装、卸载、升级、查询、校验、以及数据库维护。
rpm :RPM程序包管理命令
1)安装
指导格式: rpm { -i | install } [ install-options ] PACKAGE_FILE ....
具体用法就是: rpm { 安 装 命 令 } [ 安 装 选 项 ] 程序包文件....
-v:显示详细
-vv:显示更详细的信息
-h:以#号显示安装的进度,每个#代表2%的进度
-i|install:安装程序包,安装后面可以跟具体的安装程序包的选项
常用安装选项有:
--tet:测试安装,但不会真正的执行安装过程,仅作测试使用.
--nodeps:忽略程序包的依赖关系
--replacepkgs:重新安装程序包
--nodigest:不检查包的完整性
--signature:不检查包的来源合法性
--noscipts:不执行程序包的脚本片断
查看过命令使用信息后,大致演示一下安装命令的使用方式:
2)升级:
指导格式:rpm {-U|--upgrade} [install-options] PACKAGE_FILE
rpm {-F|--freshen} [install-options] PACKAGE_FILE
此升级命令为两类:
U|--upgrade:安装是有旧版本的程序包-->升级,如果没有旧版本的程序包-->安装.
F|freshen: 安装时有旧版本的程序包-->升级,如果没有旧版本的程序包--> 不做操作
---lodpackage: 降级安装包的版本
--force:进行强制的操作
升级需要的注意事项:
1、不要对内核进行升级操作,Linux支持多版本的内核并存机制,因此可以直接安装新版本的内核即可.
2、如果原程序包的配置文件安装后本修改、升级时,新版本的配置文件不会覆盖旧版本的配置文件,而是单独新建一个以.rpmnew结尾的心配置文件.
因为小弟没有可用相应的包,所以暂不演示升级操作.
3)查询:
指导格式:rpm {-q|--query} [select-options] [query-options]
查询选项:
-a:查找所有ALL
-p:针对尚未安装的包进行查询工作
-f:查询指定的文件是由哪个程序包生成
-c:查询程序包的配置文件信息
-d:查询程序文档
-i:详细信息
-l:查询包的生成所有文件
-r:查询指定的程序包所依赖的功能
--provides:列出指定程序包所提供的功能
--script:程序包自带的脚本片断
4) 卸载:
指导格式:rpm {-e|--erase} [--allmatches] [--nodeps]
5) 校验:
指导格式:rpm {-V|--verify} [select-options] [verify-options]
6)数据库重建
数据库目录: /var/lib/rpm
rpm {--initdb | --rebuilddb}
initdb: 初始化
如果事先不存在数据库,则新建之,否则,不执行任何操作;
rebuilddb:重建
无论当前存在与否,直接重新创建数据库
今天先写到这里,晚些时间我将继续添加rpm包管理器的前端工具:yum工具,写的不是很具体到位,如果有哪里说错了还请大神们指点一二,小弟拜谢~~