linux软件包管理之RPM

RPM是RHEL的一款后端软件包管理工具;全称为RedHat Package Manage,由RedHat公司开发,主要作为RehHat Linux软件包的管理机制之一,但并未用作商业用途,而是遵循GPL协议,其设计理念是开放的;现包括SUSE、Openlinux等发行版都采用,是非常强大的软件管理工具。

RPM是以一种数据库记录的方式来将需要的软件包安装到linux系统的一套管理机制,最大特点是:

1、由于软件包是已经编译过且打包完毕的,所以软件传输与安装很方便

2、由于软件安装之后信息都记录在数据库中,很方便查询,升级与卸载

数据库在/var/lib/rpm

3、RPM不仅是作为软件包管理的工具,还可以进行制作软件包,将源码格式编译后经过处理,制作成rpm格式的软件包

RPM也有缺点,就是对软件之间的依赖关系不能很好的处理,例如A依赖B,B依赖C这样还好,顺序安装就可以,但是在linux中有可能会出现A依赖B,B依赖C,而C却依赖A,这样就让人很头疼了,所以就有了另一种软件管理机制yum,yum就是为了处理软件依赖关系而产生的。

RPM的命名格式,RPM有主包和子包之分

1、安装

rpm -i{vh} PACKAGE_FILE

-i:安装

-h:以#号显示进度,每个#号代表2%

-v:显示详细信息

-ivh也是常用组合选项

-vv:显示更详细信息

--nodeps:忽略依赖关系

--prefix:指定软件的安装路径

--replacefiles:解决安装过程中出现某些文件已经被被安装在系统上,则直接覆盖

--replacepkgs:重新安装,替换原有安装

--force:强制安装,可以实现重装或降级

--test:测试依赖关系

2、查询

rpm -q{ilcdf} PACKAGE_NAME

-q:查询

-i:查询指定包的说明信息

-l:查询指定包安装后生成的文件列表

-c:查询指定包生成的配置文件

-d:查询指定包的帮助文件

--scripts PACKAGE_NAME:查询指定包中包含的脚本

-f /PATH/FILE:查询指定的文件是由哪个rpm包生成的

如果某个rpm包尚未安装,查询说明信息、安装后要生成的文件使用

rpm -qfi PACKAGE_NAME

rpm -qfl PACKAGE_NAME

3、升级

rpm -U PACKAGE_NAME:如果装有老版本,则升级否则,则安装

rpm -F PACKAGE_NAME:如果装有老版本,则升级否则,则退出

--oldpackage:降级

4、卸载

rpm -e PACKAGE_NAME

--nodeps:忽略依赖关系

5、校验

rpm -V{apf} PACKAGE_NAME:校验文件,没有返回值则表示没有修改过任何文件

-a:校验目前系统上面所有可能被更劢过的文件

-p:校验软件内可能被更改过的文件

-f:校验某个文件是否被更改过

返回值的属性信息:

S :文件的容量大小是否被改变

M :文件的类型和文件的属性 (rwx) 是否被改变

5 :MD5 值是否相同

D :设备的主/次代码是否改变

L :Link 路径已被改变

U :文件的属主已被改变

G :文件的所属组已被改变

T :文件的建立时间已被改变

6、重建数据库

rpm -- rebuilddb:重建数据库

rpm --initdb:初始化数据库

7、检查来源合法性及软件包完整性

/etc/pki/rpm-gpg/存放RedHat释出的公钥

导入秘钥文件:

rpm --export /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

rpm -K PACKAGE_NAME:检验文件

dsa,gpg:检验来源合法性,也即验证签名

sha1,md5:验证完整性

--nosignature:忽略签名

--nodigest:忽略验证完整性

linux软件包管理之RPM,布布扣,bubuko.com

时间: 2024-10-13 10:47:21

linux软件包管理之RPM的相关文章

linux软件包管理之rpm 、yum基本使用

linux软件包管理之rpm .yum基本使用 一.RPM RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux.S.u.S.E.以及TurboLinux等Linux的分发版本都有采用,可以算是公认的行业标准了. RPM主要功能在于对linux中以.rpm为后缀的软件包的安装.升级.卸载.校验及查询进行便捷管理. 1.安装软件包及常用选项       rpm

Linux 软件包管理之RPM

在 GNU/Linux( 以下简称 Linux) 操作系统中,RPM 和 DPKG 是最为常见的两类软件包管理工具,他们分别应用于基于 RPM 软件包的 Linux 发行版本和 DEB 软件包的 Linux 发行版本中. Linux软件包管理器主要用于管理Linux系统中的软件包,其主要用于实现安装.卸载.升级等功能,并提供对系统中所有软件包状态信息的查询. RPM 最开始官方解释为:"Redhat Package Manager",由 Red Hat 公司制定实施,由于被 GNU 开

Linux软件包管理器rpm与yum

在我们的运维工作,总是避免不了安装某些软件,或者编译安装某些软件,我们知道操作系统当中的程序都是有程序员通过开发工具开发的来,程序员直接编写的纯文本的文档我们称之为源代码,但我们的计算机只能识别二进制程序,那么必须要将源代码变成计算机能识别的二进制程序,这里需要通过编译器来进行编译,将源码转换成二进制程序,再通过安装即可. 还有一类程序就是二进制程序,系统是由某些厂商来做的,在厂商的系统上编译出来的程序,自然就在系统上运行了,这里是由厂商直接编译好程序然后释放出来给用户,如此一来,由于我们本来就

linux软件包管理rpm

程序的组成部分: 二进制部分:一般在/bin./sbin等目录 库:/lib.include 配置文件: /etc 帮助文件:man linux各个目录简要注意点: /etc,/bin,/sbin,/lib 系统启动就需要用到的程序,这些目录不能挂载额外的分区,必须在根文件系统所在的分区上 /usr/ bin sbin lib 操作系统核心功能,可以单独分区 /proc /sys 不能单独分区,默认为空 /dev:设备,不能单独分区 /root:不能单独分区 /var:建议单独分区 /boot:

Linux软件包管理——rpm

/etc, /bin, /sbin, /lib, /usr/share/man /etc, /bin, /sbin, /lib:系统启动就需要用到的程序,这些目录不能挂载在额外的分区,必须在根文件系统分区上 /usr/ bin sbin lib 操作系统核心功能,可以单独分区 /usr/local 建议单独分区 bin sbin lib etc man /opt:第三方默认安装位置,现在大多数为/usr/local目录下 /proc:不能单独分区,默认为空 /sys:不能单独分区,默认为空 /d

1、linux软件包管理

linux软件包管理分为两种:RPM包管理和源码包管理,其中RPM包管理又有两种方式:①RPM命令管理,②YUM在线命令管理. RPM包依赖关系: 1.树形依赖 2.环形依赖 (用一条命令同时装来解决) 3.模块依赖,模块依赖查询网址www.rpmfind.net.例如,安装某个rpm包的时候需要依赖模块libodbcinst.so.2,解决步骤:在rpmfind网址上查找到模块所在的rpm包,然后安装该包即可. 区别“包全名”与“包名” 1.包全名:mysql-5.1.73-7.el6.x86

Linux软件包管理01-RPM

一.软件包的组成 1.二进制程序(二进制,可执行):如,mysql,mysqld,mysqladmin 2.配置文件,组成方式: a)将主配置文件切割为多个小文件,并放置于某个目录中,如: /etc/profile,/etc/profile.d/* /etc/pam.conf,/etc/pam.d/* /etc/yum.conf,/etc/yum.conf.d/* b)单文件,在内部分割为多个片断 [mysql] [mysqld] 3.库文件(二进制,可执行): 静态库 动态库 4.帮助文件 手

Linux软件包管理02-RPM

一.rpm包常用管理命令 1.安装 a)rpm -i /PATH/TO/PACKAGE_FILE b)-h: 以#显示进度:每个#表示2%; c)-v: 显示详细过程 d)-vv: 更详细的过程 如:rpm -ivh /PATH/TO/PACKAGE_FILE e)rpm -ivh /mnt/CentOS/zsh-4.2.6-8.el5.i386.rpm f)--test:测试安装是否能正常进行 g)--nodeps: 忽略依赖关系: h)--replacepkgs: 重新安装,替换原有安装:

Linux软件包管理03-YUM

一.YUM定义 1.介绍:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE.CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载.安装.每一个rpm包依赖于其它的哪些capacity,是rpm包的制作者定义的: 2.repository(仓库):yum源,包含rpm包集合.xml文档等等: 3.Re