软件包管理—rpm

基础了解

软件包,顾名思义就是由多个软件组成的软件包。

软件包的组成主要有四大部分:

1、二进制程序。主要存在与系统的/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin.

2、库文件。存在于/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64

3、配置文件。程序的公共配置文件为/etc/ld.so.conf。各个程序的独立的配置文件为/etc/ld.so.conf.d/*.conf。一般建议配置单个程序的配置文件,方便管理。

4、帮助文件。如man文件、info文件、README、INSTALL等。

rpm包管理之命名

命名规则:Pkgname-version-release.arch.rpm

Version:major.minor.release

Release:软件包被开发出来的发行号。

Release:软件包被编译为二进制程序的发行号。

Arch:软件包被编译的硬件平台。如x86_64, ppc等。

如:vsftpd-2.2.2-11.el6_4.1.x86_64.rpm

rpm包管理之安装:

命令:rpm  { -i | --install }  /path/to/Pkgname

同时还可以与其他选项一同使用,如:

-v(verbose):显示安装过程。

-h(hase):以“#”的个数显示安装进度,一个“#”表示2%。

--test:只测试不安装。

依赖性关系解决:

1、将依赖的包每个都安装上去。

2、忽略依赖关系,使用(--nodeps)

重新安装:

命令:rpm  { -i | --install }  --replace  Pkgname

rpm包管理之卸载:

命令:rpm  { -e| --erase }  name

依赖关系解决:

1、将所依赖的包以一卸载。

2、忽略依赖关系,使用(--nodeps)

rpm包管理之查询:

命令:rpm  { -q | --query }  Pkgname

具体操作:

rpm -qa :查询所有已经安装的软件包。

rpm -qi Pkgname:查询包的信息。

rpm -ql Pkgname:查询包安装后在系统上生成的文件列表。

rpm -qf /path/to/filename:查询该文件是由哪个包生成的。

rpm -qd Pkgname:查询软件包安装之后的帮助文档。

rpm -qc Pkgname:查询软件包安装之后的配置文件。

rpm -q --scripts Pkgname:查询软件包安装的脚本信息,主要有preinstall、postinstall、preuninstall、postuninstall。这些脚本信息主要是做一些安装之前和安装之后的处理。

rpm包管理之升级:

命令:rpm  { -U| --upgrade } Pkgname

1、使用(--nodeps)解决升级过程的依赖关系。

2、使用(--force)解决升级过程新旧版本之间的冲突。

rpm包管理之检验:

命令:rpm  { -V | --verify}  Pkgname

结果显示解析,若一下选项有显示,表示该选项出问题:

1、S(size):表示文件的大小被修改过。

2、M(mode):表示文件的权限被修改过。

3、5(MD5):表示校验结果出问题。

4、D(Device major|minor):表示设备的版本号被修改过。

5、L(readlink):符号链接的路径被改变。

6、U(user):文件的属主不匹配。

7、G(group):文件的属组不匹配。

8、T(time):文件的时间戳被改变。

rpm包管理之来源合法性检验及软件包完整性检验:

来源合法性检验:通过单向加密机制(md5|sha1)

完整性检验:通过公钥加密机制(RSA)

命令:rpm { -K| checksig} /path/to/Pkgname

在执行该命令之前应该先导入公钥,不然会导致RSA和MD5都出错。

#rpm --import  /path/to/Pkg-key

[[email protected]~]# rpm  -K/media/rhel6.5/Packages/vim-enhanced-7.2.411-1.8.el6.x86_64.rpm 
/media/rhel6.5/Packages/vim-enhanced-7.2.411-1.8.el6.x86_64.rpm: RSA sha1 ((MD5) PGP) md5 NOT OK (MISSING KEYS: (MD5) PGP#fd431d51) 
[[email protected] ~]# rpm --import /media/rhel6.5/RPM-GPG-KEY-redhat-release 
[[email protected] ~]# rpm -K /media/rhel6.5/Packages/vim-enhanced-7.2.411-1.8.el6.x86_64.rpm 
/media/rhel6.5/Packages/vim-enhanced-7.2.411-1.8.el6.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

rpm包管理之数据库重建:

命令:rpm  --initdb:初始化数据库,不会覆盖原有数据库

rpm --rebuilddb:重建数据库,会覆盖原有数据库。

时间: 2024-10-15 12:43:28

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

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|yum|源码包}2015082901

CentOS软件包管理 Linux程序安装有三种方式: 1.  二进制包安装 a.RPM b.YUM 2.  源码包安装 (1)二进制包管理: RPM CentOS上的二进制包为rpm格式,并且rpm软件包管理程序也叫做rpm(RPM is Package Manager) RPM包管理方式的优点是:安装简单方便,因为软件已经编译完成打包完毕,安装只是个验证环境和解压的过程.此外通过RPM方式安装的软件,RPM工具都会记录软件的安装信息至数据库中(/var/lib/rpm),这样方便了软件日后的

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

linux下系统软件包管理(rpm、yum、源码包安装)

1. rpm工具rpm全称为Redhat Package Manager,红帽软件包管理工具,设计理念是开放的,不仅仅是在RedHat平台上,在SUSE上也是可以使用的. rpm包名字构成由-和.分成了若干部分,如abrt-cli-2.0.8-15.el6.centos.i686.rpm,abrt-cli是包名,2.0.8-15是版本号,el6指的是redhat企业版6,centos指的是这是在centos上用的,i686指的是平台类型.有些rpm包并没有写具体的平台而是noarch,这代表这个

五、软件包管理RPM与YUM

5.1.程序包管理器 程序包管理器的基本功能:将编译好的应用程序的各组成文件打包一个或几个程序包文件,从而方便快捷地实现程序包的安装.卸载.查询.升级和校验等管理操作:其文件组成一般可以分为两类: 1).程序的组成组成清单 (每个包独有):文件清单. 安装或卸载时运行的脚本2).数据库(公共):程序包名称及版本.依赖关系:功能说明:安装生成的各文件的文件路径及校验码信息:软件包的组成部分. 软件包安装后,一般分布到如下一些目录: RPM 全名是『RedHat Package Manager ,R

linux系统-软件包管理-Rpm安装补充管理

一 RPM软件包的安装管理 1 查询选项: (1) -a 查询已经安装的软件包 (2) -f 查询文件所属的软件包 (3) -i 显示软件包的信息 (4) -l 显示软件包的文件列表 (5) -d 显示被标记为文档的列表 (6) -c 显示被标记为配置文件的文件列表 二 RPM查询应用案列 1 查询文件所属的软件包:rpm - qf 2 查询软件包信息:           rpm -qi  rpm -qip 3 查询软件包的安装文件:rpm -qd 4 查询软件包的配置文件:rpm -qc 三

软件包管理rpm和yum

rpm的使用: 安装的包相关包信息会保存在/var/lib/rpm目录下的文件中 安装参数: -i install安装 -v 显示详细信息 -h 打印####号 -V 校验软件包,会到/var/lib/rpm下进行校验 常用 rpm -ivh 软件包安装(包全名) 查询参数: -q query查询 -i 拆线已安装报的详细信息 -l 查询安装的包的所有路径 -a 查询所有安装的包 -p 查询未安装的软件包的相关信息 -R 查询软件包的依赖性 -f  反向查找文件是由那个软件包安装的 rpm -V

软件包管理rpm、yum及编译安装

库文件 查看二进制程序所依赖的库文件 ldd /PATH/TO/BINARY_FILE 管理及查看本机装载的库文件 ldconfig 加载库文件 /sbin/ldconfig -p: 显示本机已经缓存的所有可用库文件 名及文件路径映射关系 配置文件:/etc/ld.so.conf, /etc/ld.so.conf.d/*.conf 缓存文件:/etc/ld.so.cache rpm(RedHat Package Manager) 程序包管理器: 功能:将编译好的应用程序的各组成文件打包一个或几个

linux软件包管理——rpm包管理

软件运行环境API:Application Programming Interface 应用程序接口(应用程序和操作系统之间的接口) 凡是符合该api标准的应用程序都可以在支持该api的操作系统上编译通过 程序源代码 --> 预处理 --> 编译 --> 汇编 --> 链接  静态编译:自身包含所有需要调用的库文件  动态编译:自身不包含,需要时调用共享库文件(.so文件)ABI:Application Binary Interface 应用程序二进制接口 规定了二进制文件的格式.