软件包管理详解

 

软件包管理器

1、功能: 
1)将软件包打包成一个文件,其中包括: 
①二进制程序 
②库文件 
③配置文件 
④帮助文件 
2)生成数据库,追中所安装的每一个文件。

2、软件包管理器的核心功能: 
1)制作软件包 
2)安装、卸载、升级、查询、校验

3、不同发行版的不同的软件包管理器: 
1)RedHat,SUSE常用:RPM 
原名为RatHat Package Manager(PRM is Package Manager) 
2)Debian常用:dpt

4、RPM不提供自动解决依赖关系的功能。

5、yum和apt-get简介: 
1)yum,apt-get是前端工具 
2)RPM,dpt是后端工具 
3)yum(Yellodog Update Modifier),是RPM提供的更高级工具,能手动管理RPM的依赖关系 
4)apt-get是dpt的常见工具,能为dpt提供了自动解决依赖关系的工具。

二、rpm包介绍

1、rpm功能:管理软件包

2、rpm数据库在/var/lib/rpm中

3、rpm管理工作: 
1)安装 
2)查询 
3)卸载 
4)升级 
5)校验 
6)数据库的重建等工作

4、rpm命名: 
1)rpm包名的组成部分: 
①主包:bind-9.7.1-1.e15.i586.rpm 
该是一个例子 
blind是包名 
9.7.1是版本号 
e15.i586是平台架构 
②子包:bind-libs-9.7.1-1.e15.i586.rpm 
bind-utils-9.7.1-1.e15.i586.rpm

2)包名一般格式:name-version-release.arch 
name—>包名 
version—>版本号 
release—>发行号 
arch—>平台架构 
①例:blind-major.minor.release-release.arch.rpm 
②major:主版本号,重大改进 
③minor:次版本号,某个子功能发生重大变化 
④release:发行号,修正了某些bug,调整了一点功能

3)rpm包的格式: 
①二进制格式 
②源码格式

4)用uname {-a,-r}可以查看平台版本,内核版本

三、安装软件包

1、格式: 
1)rpm -i /PATH/TO/PACKAGE_FILE 
2)常用格式: 
rpm -ivh /PATH/TO/PACKAGE_FILE 
例子:rpm -ivh zsh-4.3.10-7.e16.x86_64.rpm

2、选项 
1)-h:以#来显示安装进度;每个#表示2%。 
2)-v:显示详细的安装过程。 
3)-vv:显示更加详细的安装过程。 
4)–nodeps:安装时忽略依赖关系。 
5)–force:强行安装,可以实现重装或者降级 
6)–replacepkgs:重新安装,替换原有安装。

四、查询软件包

1、格式: 
rpm -q /PACKAGE_NAME 
例子:rpm -q zsh

2、选项: 
1)-qa:查询已经安装的所有包 
例:rpm -qa 
2)-qi:查询指定包的说明信息(information) 
3)-ql:查询指定包安装后生成的文件列表(list) 
4)-qc:查询指定包安装的配置文件(configure) 
5)-qf /path/to/somefile :查询指定的文件由哪个rpm包安装生成的。 
例:rpm -qf /bin/ls 
6)-qd:查询指定包安装的帮助文件(document) 
7)-q –scripts PACKAGE_NAME:查询指定包中包含的脚本 
例:rpm -q –scripts bash(zsh) 
8)-p:如果某rpm包尚未安装,我们需查询其说明信息、安装以后会生成的文件 
例:rpm -qp{i,l,c,d} /PATH/TO/PACKAGE_FILE

五、升级软件包

1、格式: 
1)rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE 
如果装有老版本的,则升级,否则,则安装 
2)rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE 
如果装有老版本的,则升级,否则,则退出

2、选项: 
1)–oldpackage:降级

六、卸载软件包

1、格式 
rpm -e PACKAGE_NAME

2、选项: 
1)–nodeps:无视依赖关系

七、校验

1、格式: 
rpm -V PACKAGE_NAME 
2、加密类型: 
1)对称加密 
2)公钥加密 
3)单向加密

3、校验来源合法性及软件包完整性 
1)sha1,md5:验证软件包完整性 
2)dsa,pgp:验证来源合法性,业即是验证签名。 
3)导入密钥文件格式: 
rpm –import /etc/pki/rpm-rgp/RPM-GPG-KEY-FILE

4、只验证软件包签名,不验证软件包合法性格式: 
rpm -K –nodigest /PATH/TO/PACKAGE_FILE

5、只验证软件包合法性,不验证软件包签名格式: 
rpm -K –nosignature /PATH/TO/PACKAGE_FILE

八、重建rpm数据库

1、rpm数据路在/var/lib/rpm目录下 
2、重建数据库格式: 
1)rpm –rebuilddb 
重建数据库,一定会重新建立 
2)rpm –initdb 
初始化数据库,没有才建立,有就不用建立

 

Linux中rpm命令用

rpm 是红帽(RedHat)软件包管理工具,实现类似于 Windows 中的添加/删除程序功能。下面,就来向大家介绍 rpm 命令的用法。

工具/原料

CentOS

一、rpm常用参数

二、rpm -ivh 软件包名

三、安装软件包并显示安装进度。这个是用得最多的了


软件包管理详解

rpm -qa

查询已经安装哪些软件包。

软件包管理详解

rpm -q 软件包名

查询指定软件包是否已经安装。

软件包管理详解

rpm -Uvh  软件包名

升级一个软件包。

软件包管理详解

 

rpm -e 软件包名

删除指定软件包。

软件包管理详解

END

二、rpm源代码包的安装

 .src.rpm结尾的文件由软件源代码文件组成,要安装此种 rpm包,需要用下面的命令。例如

rpm –recompile vim-4.6-4.src.rpm   这个命令将编译源代码,然后安装它。

软件包管理详解

而以下命令

rpm –rebuild vim-4.6-4.src.rpm

在安装之后,会把编译后的可执行文件再包装成RPM软件包,这样,下次安装时就可以直接安装RPM包而不用编译了。

软件包管理详解软件包管理详解

 

 

 

 

原创文章,作者:linux-qiao,如若转载,请注明出处:http://www.178linux.com/84428

(0)
上一篇 2017-08-11 20:46
下一篇 2017-08-11 21:40

相关推荐

  • 使用CDN后,PHP如何获取用户的真是IP?

    在统计访问日志参数的时候IP是一个重要的参数,所有索取客户端的IP就至关重要。 在logformat配置中有两个变量是获取IP地址的: remoteaddr:客户端IP xforwardedfor:客户端的IP 从上面来看两个都是客户端IP,那这两个变量有什么不同? 首先当你访问某个网站,假设你中间不经过任何代理,那么webserver就会把remotead…

    Linux干货 2015-12-21
  • Linux用户和组管理及相关命令详解

        概要:在学习Linux的初级阶段,用户管理是基础管理的重要部分,任何命令的运行,系统的正常运转,均离不开用户管理的内容,本篇就为大家介绍下Linux用户管理的一些基础概念和一些基础命令的用法。内容主要分为以下三个部分:        &nbs…

    Linux干货 2016-08-02
  • 硬链接和软链接的区别

    硬链接和软链接在文件系统实现上的区别决定了两者之间功能上的不同,也就是说硬链接和软链在文件系统上两者实现的方式不同,让其各自具有不同的功能和特色,也决定了各自的优点和缺点。接下同文件系统上创建硬链接和软链接看各自的特点。 一文件系统上创建硬链接 下面命令是在文件系统上创建一个硬链接: ~]# ln test /testdir/t…

    Linux干货 2016-10-29
  • RHCE系列之LVM—-操作篇

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1350942    上一篇为大家介绍LVM的一些概念,这一篇就教大家一些日常的LVM的操作吧。毕竟,理论还是要应用到实战中来的嘛。 &nb…

    Linux干货 2016-08-15
  • SecureCRT 8.0的安装及Linux基本命令介绍

    在CentOS虚拟中安装并打开图形界面后,可以在图形界面和命令行界面之间任意切换。在打开终端后输入init3可以切换至命令行界面,输入init5返回到图形界面。 这里我们用SecureCRT 8.0来远程的对虚拟机进行操作,对于SecureCRT 8.0的安装步骤就不详细介绍,简单介绍下如何连接到CentOS。 1. 2.点击完成。   &nbsp…

    2017-07-13
  • 文本处理和正则表达式练习(0805)

    1、找出ifconfig命令结果中本机的所有IPv4地址     1.1 Centos7     1.2 Centos6 2、查出分区空间使用率的最大百分比值,取各分区利用率的数值 取出各分区数值 取出最大百分比 3、查出用户UID最大值的用户名、 UID及shell类型 4、查出/tmp…

    Linux干货 2016-08-06