一些小知识

version:major.minor.release

rpm包命名格式:

name-version-release.arch.rpm

release后也会跟os,release.os

arch:archetecture的缩写,如i386表示32位的,x64(或者叫amd64,注意可不是适用于amd处理器的64)表示64位的,noarch是所有平台通用的。

例子:

redis-3.0.2-1.el7.x64.rpm

redis对应name,3.0.2对应version,1对应release,el7表示centos7对应os,x86对应arch

其中rpm包还可以分为主包,支包。主包是最基本的包,支包是一些支持其他功能的包,比如

因为linux都是开源的,所以他的软件也会有对应的开发包,方便开发人员对这个软件进行二次研发

但是这对于只是用这个软件的人来说就没什么用了,开发工具包的包名叫做devel

主包:name-version-release.arch.rpm

支包:name-function-version-release.arch.rpm

function:devel,untils,libs,...

rpm包存在依赖关系:

X,Y,Z

    x--y,z

        y---a,b,c

        c ---y

以上存在循环依赖,比如安装a之前要先安装b,安装b之前要安装c,安装c之前要先安装a

为了解决这种循环依赖的问题,就会有很多安装工具,能自动解决依赖关系:

yum:centos上的rpm包管理器

apt-get:ubuntu

zypper:suse

dnf:fedora 22+

程序包管理器:将编译好的应用程序的各组成文件盗宝成一个或几个程序包文件,从而更方便的实现程序包的安装,升级,卸载,查询等管理操作

程序包管理器的数据库:这个数据库里面有安装的程序包的名称,版本,依赖关系,功能说明,等等,在/var/lib/rpm。

获取程序包的途径:

1,系统发型版的光盘,或官方文件服务器,或镜像站点,有名的镜像站点有aliyun,sohu,1632:

http://mirrors.aliyun.com

2,各种软件的官方站点

3,第三方组织:

epel(这个是红帽社区比较权威的组织,他们收录的很多软件的rpm包,比如有些软件,官方没有收录,但是会被epel收购,而aliyun等镜像站点也会包含epel的镜像)

搜索rmp包的网站:pkgs.org,rpmfind.net , rpm.pbone.net

rpm命令:

安装:-i,--install

升级:-U,--update

卸载:-e,--erase

查询:-q,--query

校验:-V

数据库维护:

猜你喜欢

转载自www.cnblogs.com/saolv/p/9657724.html