[转]centos6.6 rpm安装与管理
centos6.6 rpm安装与管理
rpm包管理:安装、升级、卸载、查询、检验
安装:
rpm {-i|--install} [install-options] PACKAGE_FILE1...
-h: hash,以#来表示安装进度;
-v, --verbose:显示安装过程中的详细信息;
安装时常用的组合: -ivh
--test:不执行真正的安装过程,而仅报告依赖关系及冲突信息等;
程序包之间存在依赖关系:
我们要安装程序包A,程序包A必需依赖程序包B,才能运行。这就是依赖关系。
依赖可能是多层次的,A 依赖 B ,B 依赖 D, D 依赖 H 。我们在安装的时候就必需先从H依次往上安装,才能顺利安装成功
依赖关系是可以忽略:
忽略能安装成功,但未必能成功运行;
--nodeps
覆盖安装:重新安装并覆盖原有的文件
--replacepkgs
强制安装:
--force
升级:
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
-U: 升级或安装
rpm {-F|--freshen} [install-options] PACKAGE_FILE ...
-F:升级
组合:-Uvh, -Fvh
--test
--nodeps
--force
--oldpackage:降级到旧版本;
升级与安装雷同
注意:如果程序包的配置文件安装后曾被修改,升级时,新版本的文件不会覆盖老版本的配置文件,而把新版本的配置文件重命名(加后缀.rpmnew)后保存;
卸载:
移除已经安装的程序包
rpm {-e|--erase} [--allmatches] [--nodeps] [--test] PACKAGE_NAME ...
简单用法:rpm -e PACKAGE_NAME...
--nodeps:忽略依赖关系;
--test: 测试卸载;dry-run模式;
--allmatches: 如果一个程序包同时安装多个版本,则此选项一次全部卸载之;
多操作几次,就会熟练的,加油额。
注意:如果程序包的配置文件安装后曾被修改,卸载时,此文件通常不会被删除,而是被重命名(加后缀.rpmsave)后留存;
查询:
查询某包是否已经安装,以及检查安装的所有包;还可以查看某包的详细信息;
rpm {-q|--query} [select-options] [query-options]
[select-options]:
1、查询某包或某些包是否安装:
rpm -q PACKAGE_NAME...
2、查询已经安装的所有包:
rpm -qa
3、查询某文件是由哪个包安装生成:
rpm -qf /PATH/TO/SOMEFILE
4、查询尚未安装的包文件的相关信息
-p
# rpm -qpi PACKAGE_FILE
[query-options]:
1、查询某包的简要说明信息:
rpm -qi PACKAGE_NAME
2、查询某包安装生成的文件列表:
rpm -ql PACKAGE_NAME
3、查询某包安装完成后生成的所有配置文件:
rpm -qc PACKAGE_NAME
4、查询某包安装完成后生成的所有帮助文件:
rpm -qd PACKAGE_NAME
5、查看某包制作时随版本变化的changelog信息:
rpm -q --changelog PACKAGE_NAME
6、查询某包提供的capabilities:
rpm -q --provides PACKAGE_NAME
7、查询某包所依赖的capabilities:
rpm -q --requires PACKAGE_NAME
8、查询某包安装或卸载时执行脚本:
rpm -q --scripts PACKAGE_NAME
校验:
查询包安装之后生成的文件是否发生了改变
rpm {-V|--verify} [select-options] [verify-options]
常见用法:rpm -V PACKAGE_NAME
S file Size differs
M Mode differs (includes permissions and file type)
5 digest (formerly MD5 sum) differs
D Device major/minor number mismatch
L readLink(2) path mismatch
U User ownership differs
G Group ownership differs
T mTime differs
P caPabilities differ
程序包的合法性验正:
来源合法:
由我们信任的制作者提供
依赖于:制作者的数字签名;签名是作者使用自己的私钥加密程序包的特性码进行的;
内容合法:
包未被二次修改;完整性校验成功
依赖于:制作者提供的程序特征码;
验正方式:安装者用同样的特征码提取算法提取程序包的特征码,并与原作者提供的相比较;
验正其光盘中程序包的来源及完整性:
rpm --import /path/to/RPM-GPG-KEY-FILE
例如:# rpm --import RPM-GPG-KEY-CentOS-6
验正:rpm {-K|--checksig} PACKAGE_FILE
--nosignature: 不检查来源合法性
--nodigest: 不检查完整性
rpm管理器数据库:/var/lib/rpm
重建数据库:
rpm {--initdb|--rebuilddb} [-v] [--dbpath DIRECTORY]
--initdb: 初始化数据库,即数据库完全不存时,可新建之;
--rebuilddb: 无论当前数据存在与否,都会直接重建此库;
大菜鸟Linux
[转]centos6.6 rpm安装与管理的更多相关文章
- Centos6下rpm安装MySQL5.6
Centos6在rpm安装 rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm yum install ...
- CentOS6脱机rpm安装MariaDB10
转载请保存原文链接:http://www.wlm.so/Article/Detail/lmb4cijci5mc900000 1.卸载原有mysql安装包,避免安装文件冲突 #查找所有的mysql包 r ...
- Linux CentOS6 mysql rpm安装
mysql rpm文件下载地址:https://dev.mysql.com/downloads/mysql/ 选择操作系统及版本: 点击5.6版本链接 将下载好的文件上传至服务器 下面开始安装: 检查 ...
- 运维笔记10 (Linux软件的安装与管理(rpm,yum))
概述:用rpm安装和管理软件(rpm解决依赖性),用yum安装与管理软件(yum解决依赖性). 1.linux的软件 linux能够说是一款改变时代的操作系统,可是一个操作系统再优秀假设没有好用的应用 ...
- rpm软件包安装与管理
一.软件包分类 1.软件包分类 源码包 二进制包 2.源码包 2.1 源码包什么样 直接由编程语言写成,没经过编译.类似于java的 .calss 文件,c的 .c文件. [root@love2 ~] ...
- centos6.5软件安装:RPM,SRPM与yum功能
鸟哥的linxu私房菜读书笔记 前言: Linux上软件的安装可以以原始码的方式来安装软件,也就是利用厂商释出的 Tarball 来进行软件的安装.不过,你应该很容易发现,那就是每次安装软件都需要侦测 ...
- Dell服务器R320在Centos6.5系统上安装MegaCli管理主板集成磁盘阵列卡
折腾了两天啊,我的神啊,,终于可以安装了 针对Dell服务器的R320版本主板集成的磁盘阵列卡,需要下载MegaCli 8或更新版本 下载链接: http://pan.baidu.com/s/1mgB ...
- CentOS6.8 RPM包安装快速zabbix22
CentOS6.8 RPM包安装快速zabbix22 yum install -y epel-release # yum install -y httpd php php-devel mysql-se ...
- Kvm--02 安装centos6系统 ,kvm磁盘管理
目录 1.安装一个CentOS6的系统的虚拟主机 2.虚拟机的备份 3.企业案例: 4.Kvm磁盘管理 1.安装一个CentOS6的系统的虚拟主机 #上传一个CenOS6系统的镜像到/opt目录下 [ ...
随机推荐
- python selenium 操作chrome
1.下载chromedriver.exe 入在chrome 浏览器目录下 from selenium import webdriverimport os chromedriver = "C: ...
- MySQL 5.7 Command Line Client输入密码后闪退和windows下mysql忘记root密码的解决办法
MySQL 5.7 Command Line Client输入密码后闪退的问题: 问题分析: 1.查看mysql command line client默认执行的一些参数.方法:开始->所有程序 ...
- python猜数脚本(电脑猜测)(二分法)
# coding=utf-8# 猜数# 记录猜数的过程import randomcom_result=[] #存放电脑结果,数组com_count=0 #存放电脑猜测次数ran=random.ran ...
- 《CoffeeScript应用开发》学习:第五章 CoffeeScript中的类
在CoffeeScript中定义类 在CoffeeScript中,使用class定义类,使用关键字new实例化对象. 给类绑定方法 class Airplane takeOff: -> cons ...
- information_schema系列十二
1: INNODB_SYS_VIRTUAL 表存储的是INNODB表的虚拟列的信息,当然这个还是比较简单的,我们直接通过SHOW CREATE TABLE 或者DESC TABLE就能看得到. Col ...
- C++ 内存的分配方式 (摘选自网络)
在c++中有三种分配内存的方式: 在许多大大公司在面试的时候很可能考到的内容.在这里和大家分享了!1. 静态存储区,是在程序编译时就已经分配好的,在整个运行期间都存在,如全局变量.常量.2. 栈上分配 ...
- 寻找 nani (1)
test.pl文件room(kitchen). room(office). room(hall). room('dining room'). room(cellar). location(desk,o ...
- php+mysql
本文整理一下使用php和mysql向前端推送数据的过程. 数据库部分: 1.首先安装服务器,我选择xampp,安装可以选择任意地址.安装完成,打开xampp-control.exe . 选择开启Apa ...
- freemarker
一.下载freemarker的jar包,到maven仓库下载 二.引入jar包,参考freemarker的手册写代码 1.Test.ftlh <!DOCTYPE html> <htm ...
- Masonry学习笔记
1.边距 [bottomView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self.view).offs ...