rpm——软件包管理工具

  一、软件包管理简介

1软件包组成

我们都在windows系统中安装过软件,基本就是用鼠标点击下一步,因而有些人认为安装软件是一件非常容易的事,无论是在何种操作系统上。然而,事实并非如此。在Linux系统上安装软件的方法完全不同于在Windows上安装,至少不会是简单的用鼠标点击下一步就行了。要想在Linux系统上安装软件包,首先要了解软件包的组成。

软件包由二进制程序、库文件、配置文件、帮助文件等重要部分组成。

软件包的安装目录如下:

二进制程序:

默认:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin,

/usr/local/sbin

自定义:/usr/local/APP/{bin,sbin}

库文件(开发库和运行库):

默认:/lib64, /usr/lib64, /usr/local/lib64

自定义: /usr/local/APP/lib

配置文件:

默认:/etc

自定义:/usr/local/APP/etc或conf目录

帮助文件:

默认:/usr/share/man, /usr/local/share/man

自定义:/usr/local/APP/man

    2软件包管理

问:安装软件包时,会在很多不同的目录下存放文件,如果要卸载软件包,怎样才能卸载得干净呢?

答:如果在安装软件包时,把安装存放软件包文件的目录记录下来,卸载时,根据这个记录就能把软件包卸载得干净。这就是软件包管理器中数据库的作用了!

在Linux系统中,一般会使用软件包管理工具对软件包进行管理。

程序包管理器功能:将编译好的程序打包成一个文件或有限的几个文件,可用于实现安装、卸载、升级、查询等功能;

程序包管理器中应该包含:

(1)数据库:

程序名及版本

程序的依赖关系:X --> Y,Z (X依赖于Y、Z)

程序的功能性说明

安装生成的各文件路径及校验码

(2)程序的组成清单:

文件清单

安装卸载时运行的脚本

常见的软件包管理器有:

Debian: dpkg,(以.deb后缀结尾)

RedHat: rpm(redhat package manager),(以.rpm后缀结尾)

  二、rpm包介绍

    RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。

利用rpm软件包管理工具可以把软件包打包成rpm格式(以.rpm为后缀),rpm包可以用rpm工具统一管理。

    1、rpm包命名格式    

rpm包命名格式:name-version-relase.arch.rpm

name : 表示软件包的名字,包括主包名和分包名

分包机制:

核心包,主包:命名与源程序一致

bash-4.2.3-3.centos7.x86_64.rpm

子包:(在主包名后加上子包的功能性描述字串)

bash-a-4.2.3-3.centos7.x86_64.rpm

bash-b-4.2.3-3.centos7.x86_64.rpm

bash-devel-4.2.3-3.centos7.x86_64.rpm

version:包源代码的版本号

version:    major.minor.release

主版本号.次版本号.源代码的发行版本号

relase :rpm自身的发行号,与程序源码的发行号无关,仅用于标识对rpm包不同制作的修订;同时,release还包含此包适用的OS

如:bash-4.2.3-3.centos5

arch :该程序包使用的硬件平台

如:x86: i386, i486, i586, i686等;

x86_64: x86_64

powerpc: ppc

noarch: 依赖于虚拟机

    2、rpm包获取的途径 

(1)发行的光盘或站点服务器

镜像:

http://mirrors.163.com

http://mirrors.sohu.com

(2)项目的官网

源代码

rpm包

(3)很多第三方机构或个人制作并公开发布许多rpm包(不一定安全)

http://rpmfind.net

http://rpm.pbone.net

(4)可靠的途径:EPEL(建议使用可靠的包)

Fedora-EPEL(Fedora官方维护,会验证包的合法性和可靠性)

    3、rpm包的合法性验正

rpm包的合法性验正主要包括:

a、来源合法性

b、包的完整性

(包制作者制作完成之后会附加数字签名于包上)

包的制作者使用单向加密提取原始数据的特征码,而后使用自己的私钥加密这段特性码,附加原始数据后面。

验正过程:

前提:必须有可靠机制获取到包制作者的公钥;

(1)使用制作者的公钥解密加密的特征码,能解密则意味着来源合法;

(2)使用与制作者同样的意向加密算法提取原始数据的特征码,并与解密出来的特征作比对,相同,则意味着完整性没问题;

  三、rpm的核心功能

    1、安装程序包

rpm——软件包管理工具,布布扣,bubuko.com

时间: 2024-12-13 02:06:03

rpm——软件包管理工具的相关文章

linux软件包的安装之----rpm软件包管理工具

程序语言开发的程序:系统调用:库,动态库(开发时指向的库) 程序:只要Windows上开的程序所指向的库遵循POSIX规范将源码拿到linux上编译时没问题的,运行应该也没有问题,能否运行还要看依赖的库文件是否存在:因为linux.Windows的ABI不同,Windows上编译好的程序无法在linux上正常运行,即使程序源码遵循POSIX规范. API:POSIX(可移植os规范) ABI:应用二进制接口 linux发行商:32bit:i386,预先编译好以后提供给用户二进制程序 64bit:

RPM是RedHat Package Manager(RedHat软件包管理工具)

RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 常用命令组合: -ivh:安装显示安装进度--install--verbose--hash -Uvh:升级软件包--Update: -ql:列出RPM软件包内的文件信息[Query Pa

linux命令:rpm软件包管理

  rpm命令简介:      rpm:软件管理器          数据库:/var/lib/rpm   用于软件进行查询相关操作的数据库.      rpmbuild:用于创建rpm软件包的工具 对软件进行安装.查询.卸载.升级.校验.数据库的重建.验证数据包等工作. 1.命令格式: 1.rpm命名规则: 主包: Usage: httpd-2.2.15-15.e16.centos.i686.rpm httpd:软件包名  2.2.15:软件版本号  15:软件发布的次数 e16.centos

Linux 入门学习之rpm软件包管理

Linux入门之软件包管理 在linux有很多类的软件包管理机制,但是在redhat.centos这类版本的系统中,都会使用一种相同的机制,就是rpm软件包管理机制,当然,还有其它版本的linux使用的不同机制: debian:使.deb文件,dpkg包管理器 redhat:使用.rpm文件,rpm包管理器 软件包在使用中又分类两种(源码包和二进制包): 源码包:一般是提供了一些源码模块和编译脚步组合起来的压缩文件,命令格式如: name-version.tar.{gz|bz2|xz} 等,这里

【one day one linux】linux下的软件包管理工具

Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat最早发行的个人版本的Linux,自从Red Hat 9.0版本发布后,RedHat 公司就不再开发桌面版的 Linux发行套件,Red Hat Linux停止了开发,而将全部力量集中在服务器版的开发上,也就是 Red Hat Enterprise Linux 版.2004年4月30日,Red Hat

Linux rpm 软件包管理命令

RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 常用命令组合: -ivh:安装显示安装进度--install--verbose--hash-Uvh:升级软件包--Update:-qpl:列出RPM软件包内的文件信息[Query Pac

(15)RPM软件包管理

RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括RedHat.CentOS.SUSE等Linux的分发版本都有采用,可以算是公认的行业标准了.RPM文件在Linux系统中的安装最为简便. rpm的常用参数 i:安装应用程序(install) e:卸载应用程序(erase) vh:显示安装进度:(verbose hash) U:升级软件包:(update) qa: 显示所有

用户管理,目录权限,定时任务及软件包管理工具

linux用户管理 linux有几种用户身份,好比qq群 1.QQ群主,想干嘛就干嘛,想踢人就踢人------等于linux的root用户,权利最大 2.QQ群管理员,群主给与他的比较大的权限--------等于linux命令加上sudo,默认以root去执行命令 3.渣渣用户,QQ群里的小白,权利特别低--------等于linux的普通用户,用于保证服务器安全,防止删除等危险操作 UID,GID UID 用户的id号,root是0,普通用户从1000开始 GID,是用户组的ID号 linux

mac安装brew 软件包管理工具Homebrew

mac 安装 brew  Homebrew brew 全称Homebrew  是Mac OSX上的软件包管理工具 Homebrew 安装和卸载工具 只用一行命令就能完成 官方地址:    http://brew.sh/index.html mac 自带ruby 打开命令行  terminal 输入  : ruby -version 1) 安装命令 ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)&