rpm软件包管理的详细解读

CentOS系统上使用rpm命令管理程序包:安装、卸载、升级、查询、校验、数据库维护
1.基本安装
rpm -ivh PackageFile
2.rpm选项
rpm -ivh --test PackageFile
--test 测试安装
--nodeps 忽略依赖性
--nosignature: 不检查来源合法性
--nodigest:不检查包完整性
3.软件包脚本
--nopre 安装前脚本
--nopost 安装时脚本
--nopreun 卸载前脚本
--nopostun 卸载后脚本
#所有脚本均不执行的话直接使用
--noscript
4.软件包的升级
升级时的注意事项:
- 不要对内核进行升级操作,linux支持多内核并存,所以直接安装新内核就好.
- 如果升级时原程序的配置文件被更改过的话,新程序不会覆盖配置文件。会把就配置文件重命名名(FILENAME.rpmnew)后保存。
rpm -Uvh PackageFIle #软件存在就升级,不存在就安装
rpm -Fvh PackageFile #存在则升级,软件不存在不升级
#
--oldpackage:降级
--force: 强制安装
5.软件包的查询
rmp -qa -p为包的查询,a为列出所有包
rpm -qa | grep "mysql" 配合grep模糊搜索使用
rpm -qf file 查询配置文件是用哪个包提供的
rpm -q --whatprovides webserver 查询能力是那个软件包提供,包括服务和文件,相比于-qf来说范围更宽
rpm -q --whatrequires 查询指定的能力依赖于哪个包
6.包查询
rpm -q --changelog httpd 查询rpm包的日志文件,非程序的日志文件
-c: 查询程序的配置文件
-d: 查询程序的文档
-i: information
-l: 查看指定的程序包安装后生成的所有文件
7.rpm包的数据库
rpm包在安装时会生成一个数据库文件,程序包名称及版本、依赖关系、功能说明、包安装后生成的各文件路径及校验码信息.
- 数据库目录 存放在
/var/lib/rpm中以__db开头的文件 - 初始化数据库
rpm -initdb数据库不存在就创建,存在不执行任何操作 - 重建数据库
rpm -rebuilddb
8.rpm包校验
在rpm数据库中存放了软件初始安装时的数据信息,当使用包校验的会拿数据库中的信息比对现在的信息,可以查出哪些被认为的修改或者覆盖过。
使用rpm -V 软件包名 校验是否被修改过。

校验参数的详细解读

传送门: 软件包校验实验
rpm软件包管理的详细解读的更多相关文章
- linux RPM软件包管理
linux RPM软件包管理 目录 1.软件包的介绍 2.rpm包管理 3.rpm包管理前端工具 1.软件包的介绍 在我们在对软件包管理前,先对软件包有个很好的了解,这样更方便我们来对其进行管理. 软 ...
- RPM软件包管理的查询功能 转
RPM软件包管理的查询功能: 命令格式 rpm {-q|--query} [select-options] [query-options] RPM的查询功能是极为强大,是极为重要的功能之一:举几个常用 ...
- Linux - rpm 软件包管理
rpm 是 Red-Hat Package Manager(rpm 软件包管理器)的缩写 rpm 的命名规则: 第一部分为 rpm 软件包的名称,第二部分是版本号,第三部分是版本发布次数,第四部分是软 ...
- CentOS软件管理之源代码以及RPM软件包管理
在Linux系统下,对于软件包的管理有多种机制,有源代码方式.RPM软件包管理方式以及YUM软件管理方式,本篇随笔将详细讲解CentOS下源代码形式安装软件以及RPM软件包管理机制 一.源代码形式 首 ...
- 逐步搭建Lamp环境之rpm软件包管理
Linux中的rpm软件包管理类似于windows下的"xxx软件管家"."xxx电脑管家",其作用主要用于查询软件的安装情况.安装软件.卸载软件. 以下针对这 ...
- linux常用命令---rpm软件包管理
rpm软件包管理
- day61:Linux:权限管理&rpm软件包管理&yum工具
目录 1.权限管理 2.rpm软件包管理 3.yum工具(联网) 权限管理 1.什么是权限? 权限主要用来约束用户能对系统所做的操作 2.为什么要使用权限? 因为系统中不可能只存在一个root用户,一 ...
- linux的RPM软件包管理工具
RPM(Redhat Package Manage)原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎.逐渐受到其他发行版的采 ...
- Fedora 22中的RPM软件包管理工具
Introduction The RPM Package Manager (RPM) is an open packaging system that runs on Fedora as well a ...
随机推荐
- rsync命令解释
-v, --verbose 详细模式输出-q, --quiet 精简输出模式-c, --checksum 打开校验开关,强制对文件传输进行校验-a, --archive 归档模式,表示以递归方式传输文 ...
- openstack开发基础
- VSFTPD 源码安装升级
/usr/local/sbin/vsd -v cp /usr/local/sbin/vsd /usr/sbin/vsd 制作启动脚本 vim /etc/xinetd.d/vsd disable = y ...
- AQS 框架之 Unsafe 源码详解
■ 前言 之前 LockSupport那篇已经叙述了是线程阻塞工具类,其底层由 Unsafe 实现,即 park(), unpark() 方法,获取指针偏移量,并操纵内存.本篇主要介绍 Unsafe ...
- NumPy快速入门笔记
我正以Python作为突破口,入门机器学习相关知识.出于机器学习实践过程中的需要,我快速了解了一下NumPy这个科学计算库的使用方法.下面记录相关学习笔记. 简介 NumPy是一个科学计算库.结合Py ...
- POJ 3581 Sequence [后缀数组]
Sequence Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 6911 Accepted: 1543 Case Tim ...
- c++中对于json的key不带双引号的问题修复
在引用了第三方数据时,数据源通过转义,将json的key上双引号给去掉了. 在PHP开发时,可以通过正则表达式替换方式来补充丢失的双引号,处理代码如下 function ex_json_decode( ...
- 【深度学习】批归一化(Batch Normalization)
BN是由Google于2015年提出,这是一个深度神经网络训练的技巧,它不仅可以加快了模型的收敛速度,而且更重要的是在一定程度缓解了深层网络中"梯度弥散"的问题,从而使得训练深层网 ...
- JavaScript中涉及得运算符以及运算符的优先级
在js中主要有三种运算符:算术运算符,逻辑与比较运算符,位运算符.在着三种运算符中,最常见的应该是算术与比较运算符,位运算符比较少见一些 *说到了运算符,就不得不说运算符的优先级.下面我来列一下这些运 ...
- laravel中实现短信发送验证码
前段时间想实现一个短信验证码的功能,但是卡了很长时间. 首先我用的是阿里云的短信服务业务,其首次接入流程如下: 在阿里云上开通短信服务后需要做的: 1,申请签名 2,申请模板 3,创建Acces ...