centos6.6 rpm安装与管理

原文地址:http://www.centoscn.com/CentOS/2015/0414/5182.html
 

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安装与管理的更多相关文章

  1. Centos6下rpm安装MySQL5.6

    Centos6在rpm安装 rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm yum install ...

  2. CentOS6脱机rpm安装MariaDB10

    转载请保存原文链接:http://www.wlm.so/Article/Detail/lmb4cijci5mc900000 1.卸载原有mysql安装包,避免安装文件冲突 #查找所有的mysql包 r ...

  3. Linux CentOS6 mysql rpm安装

    mysql rpm文件下载地址:https://dev.mysql.com/downloads/mysql/ 选择操作系统及版本: 点击5.6版本链接 将下载好的文件上传至服务器 下面开始安装: 检查 ...

  4. 运维笔记10 (Linux软件的安装与管理(rpm,yum))

    概述:用rpm安装和管理软件(rpm解决依赖性),用yum安装与管理软件(yum解决依赖性). 1.linux的软件 linux能够说是一款改变时代的操作系统,可是一个操作系统再优秀假设没有好用的应用 ...

  5. rpm软件包安装与管理

    一.软件包分类 1.软件包分类 源码包 二进制包 2.源码包 2.1 源码包什么样 直接由编程语言写成,没经过编译.类似于java的 .calss 文件,c的 .c文件. [root@love2 ~] ...

  6. centos6.5软件安装:RPM,SRPM与yum功能

    鸟哥的linxu私房菜读书笔记 前言: Linux上软件的安装可以以原始码的方式来安装软件,也就是利用厂商释出的 Tarball 来进行软件的安装.不过,你应该很容易发现,那就是每次安装软件都需要侦测 ...

  7. Dell服务器R320在Centos6.5系统上安装MegaCli管理主板集成磁盘阵列卡

    折腾了两天啊,我的神啊,,终于可以安装了 针对Dell服务器的R320版本主板集成的磁盘阵列卡,需要下载MegaCli 8或更新版本 下载链接: http://pan.baidu.com/s/1mgB ...

  8. CentOS6.8 RPM包安装快速zabbix22

    CentOS6.8 RPM包安装快速zabbix22 yum install -y epel-release # yum install -y httpd php php-devel mysql-se ...

  9. Kvm--02 安装centos6系统 ,kvm磁盘管理

    目录 1.安装一个CentOS6的系统的虚拟主机 2.虚拟机的备份 3.企业案例: 4.Kvm磁盘管理 1.安装一个CentOS6的系统的虚拟主机 #上传一个CenOS6系统的镜像到/opt目录下 [ ...

随机推荐

  1. PAT 乙级 1005. 继续(3n+1)猜想 (25)

    1005. 继续(3n+1)猜想 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B   卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情 ...

  2. 转:永久解决火狐浏览器出现的flash版本更新问题

    发现问题: 1.找到火狐浏览器,并打开出现问题的页面. 2.点击火狐浏览器的"打开菜单"按钮,选择"附加组件"按钮. 3.在"搜索所有添加附件&quo ...

  3. 简单的block

    int multi = 7;                int (^myBlock)(int) = ^(int num){            return num * multi;       ...

  4. APP测试之登录

    我们公司产品登录很简单 手机号为账号,每次登录输入短信验证码.验证码为6位数字.登陆后可以记录登录状态.未登录时可以微信登录然后验证或者APP登录后可以在个人中心绑定微信. 一APP内部登录 1.手机 ...

  5. js获取及判断按键的方法

    js 里面的键盘事件经常用到,所以收集了键盘事件对应的键码来分享下: keyCode 8 = BackSpace BackSpace keyCode 9 = Tab Tab keyCode 12 = ...

  6. ViewPager+PagerTabStrip实现页面的切换

    页面切换效果图 首先创建布局: 代码: <?xml version="1.0" encoding="utf-8"?><LinearLayout ...

  7. VS C#开发中WinForm中Setting.settings的作用

    .定义 在Settings.settings文件中定义配置字段.把作用范围定义为:User则运行时可更改,Applicatiion则运行时不可更改.可以使用数据网格视图,很方便: .读取配置值 tex ...

  8. 新学习到的vi的一些命令

    1.普通模式下.符号可以重复上次的命令 2.普通模式下n<command>可以重复n次command命令 3.dw可以删除单个词    dnw可以删除n个单词  x和X可以在普通模式下删除 ...

  9. json_decode返回null 和synax error原因及处理

    $checkLogin ='[{"gdsincode":"1103293","gdsname":"鲜美来带鱼段800g" ...

  10. python中的告警处理

    在Python中,遇到异常时,一类是直接抛出异常,exception:另一类直接告警warning. 对于后者,通常是打印一句话.前者则或中断程序执行. 考虑到避免由于告警导致后续的不可预知的错误,可 ...