软件包管理详解

 

软件包管理器

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)
linux-qiaolinux-qiao
上一篇 2017-08-11 20:46
下一篇 2017-08-11 21:40

相关推荐

  • Linux文件目录的权限

     Linux是多用户多任务的分时操作系统,如果每个人都对文件和目录都是随便访问的话,难么你的文件很有可能会被他人删除或修改,从而丢失数据。为此系统对文件增加了权限的机制来防止这种事情的发生。对文件而言,用户被分为三类:属主(onwer)、属组(group)、和其他(other)。常规的权限分为:读(r readable)、写(w writable)…

    Linux干货 2016-08-07
  • OSI和TCP/IP

            我们生活中各方面都离不开网络,那网络究竟是什么东西呢?它是怎么做到让在不同地点的人无视空间距离完成通信的呢?首先我们来了解一下网络的基本概念。网络是由节点和连线构成,表示诸多对象及其相互联系。在数学上,网络是一种图,一般认为专指加权图。网络除了数学定义外,还有具体…

    2017-09-02
  • linux时间

    linux有两个时间:     系统时间和硬件时间 系统时间: 最简单的使用date命令显示当前系统的时间,命令行输入date。 # date Thu Jun  2 17:11:48 CST 2016 date的具体使用方式:     1. date格式显示:date …

    Linux干货 2016-06-03
  • N25-第13周博客作业

    1、建立samba共享,共享目录为/data,要求:(描述完整的过程)   1)共享名为shared,工作组为magedu;   2)添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名; &n…

    Linux干货 2017-05-21
  • linux系统启动流程

    linux系统启动流程 CentOS(5、6)系统启动流程 具体流程: 加载BIOS的硬件信息与进行自我测试,并依据设置取得第一个可启动的设备; 读取并执行第一个启动设备内MBR的boot Loader 依据boot Loader的设置加载Kernel,Kernel会开始检测硬件与加载驱动程序 硬件驱动成功后,Kernel会主动调用init进程,而init会…

    Linux干货 2016-09-11
  • Linux的哲学思想

    Linux的哲学思想 一切皆文件  几乎把所有的资源系统抽象为文件形式:包括硬件设备,甚至通信接口等 由众多功能单一的程序组成:一个程序只做一件事,并且做好;组合小程序完成复杂任务  力求使程序精简凝练,出现地完成最核心的需求;尽量避免使其膨胀成为一个臃肿的程序,致使大部分代码很少被需要和执行。 小程序易于理解,维护,消耗系统资源较少,易…

    Linux干货 2017-07-03