软件包管理详解

 

软件包管理器

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

相关推荐

  • 加深对grep命令和find命令的熟悉

    1、显示当前系统上root、fedora或user1用户的默认shell。 grep -E “^(root|fedora|user1)\>” /etc/passwd | cut -d: -f7 [root@localhost ~]# grep -E “^(root|fedora|user1)\>” /etc/passwd …

    Linux干货 2017-07-30
  • 文件系统结构

    -文件系统结构
    -应用程序的组成部分
    -文件类型

    2018-03-13
  • 第九周练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # nologin=$(awk -F: '$NF=="/sbin/nologin"{print $NF}…

    Linux干货 2016-12-21
  • AIX 6.1 硬件基本管理

    查看整体的硬件信息:          # prtconf #将所有系统信息输出到屏幕上显示          # lsdev -C #查看硬件设备信息及其工作状态 注:硬件的设备通常为2 种状态,"availiable"表示设备可用,de…

    Linux干货 2015-10-18
  • N21-天天-第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 主要功能: 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。 集线器的英文称为“Hub”。主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心…

    Linux干货 2016-08-29
  • linux用户权限管理

    用户: 管理员–root= 0 普通用户–(1-65535) 系统用户–(1-499),(1-999) 登录用户–(500+),(1000+) 用户和组的配置文件位置: /etc/passwd– 存储系统用户所有信息 /etc/group– 存储用户组的所有信息 /etc/shadow&…

    2017-04-02