1.软件包管理简介

1.1 软件包分类

  • 源码包
  1. 脚本安装包<br />优点:<br />① 开源<br />② 可以自由选择所需的功能<br />③ 软件是编译安装,所以更适合自己的系统<br />④ 卸载方面<br />缺点<br />① 安装过程步骤较多<br />② 编译过程时间过长<br />③ 编译安装,安装过程一旦报错新手很难解决
  • 二进制包(RPM包,系统默认包)

    • 优点
      ① 包管理系统简单,只通过几个人命令就可以实现包的安装
      ② 安装速度比源代码包安装快的多
  • 缺点
       ① 经过编译,不在可以看到源代码<br />           ② 功能选择不如源码包灵活<br />           ③ 依赖性

2.RPM包管理 -rpm命令管理

2.1 RPM包命名规则

linux  软件安装 - 图1

2.2 rpm包依赖性

  1. 树形依赖 a - b - c

  2. 环形依赖 a-b-c-a

  3. 模板依赖 模板依赖查询网站 www.rpmfind.net

2.3 包全名与包名

  1. 包全名 : 操作的包是没有安装的软件包时,使用包全名。而且要注意路径

  2. 包名 : 操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm

2.4 RPM 安装

rpm -ivh 包全名

选项
-i (install) 安装
-v (verbose) 显示详细信息
-h (hash) 显示进度
—nodeps 不检测依赖性

2.5 RPM包升级

rpm -Uvh 包全名

选项
-U (upgrade) 升级

2.6 卸载

rpm -e 包名

选项
-e(erase) 卸载
—nodeps 不检测依赖性

2.7 查询是否安装

rpm -q 包名 查询包是否安装

选项
-q 查询(query)

rpm -qa 查询所有已经安装的RPM包

选项
-a 所有
linux  软件安装 - 图2

已安装的文件的命令在任何目录下都可以使用
未安装的文件命令需要在Package目录下
linux  软件安装 - 图3

rpm -qi 包名 查询软件包详细信息

选项
-i 查询软件信息
linux  软件安装 - 图4

rpm -qip 包全名

选项
-p 查询未安装包的信息
查询未安装包的信息(package ) 后面是包全名
linux  软件安装 - 图5

rpm -ql 包名 查询包中文件默认安装位置

选项
-l 列表(list) 查询为已安装的包 若没有安装需要加-p 后接包全名

rpm -qf 系统文件名 查询系统文件属于哪个软件包

选项
-f 查询系统文件属于哪个软件包(file)
linux  软件安装 - 图6

rpm -qR 包名 查询软件包的依赖性

选项:
-R 查询软件包的依赖性(requires)
-p 查询未安装包信息(package) 后跟包全名
linux  软件安装 - 图7

2.8 RPM 包校检

rpm -V 以安装的包名

   检查安装包是否发生了修改<br />选项:<br />-V  校检指定RPM包中的文件(verify)<br />![](https://cdn.nlark.com/yuque/0/2018/png/224640/1545919486697-f644fd73-a5a8-4f14-b51b-9a51201566d4.png#align=left&display=inline&height=39&margin=%5Bobject%20Object%5D&originHeight=39&originWidth=636&status=done&style=none&width=636)

linux  软件安装 - 图8
linux  软件安装 - 图9

2.9 RPM包中文件提取 主要处理误操作

rpm2cpio 包全名 | cpio -idv .文件绝对路径 将rpm文件转换为cpio文件 \ : 换行的意思

cpio -idv <[文件|设备]
选项:
-i:copy-in模式 ,还原
-d:还原时自动新建目录
-v: 显示还原过程
rpm2cpio 将rpm包转换为cpio的命令

cpio 是一个标准工具,他用于创建软件档案文件和从档案文件中提起文件

linux  软件安装 - 图10

3.RPM包管理 -yum在线管理

3.1 IP地址配置和网络yum源

linux  软件安装 - 图11

在有网的情况下选择BASE(默认) 没有网的情况下选择的是Medio
linux  软件安装 - 图12
linux  软件安装 - 图13
linux  软件安装 - 图14

3.2 yum命令

3.2.1 查询命令

yum list
查询所有可用软件包列表
yum search 关键字(包名)
搜素服务器上所有和关键字相关的包
linux  软件安装 - 图15
linux  软件安装 - 图16

3.2.2 安装命令

yum -y install 包名
选项:
install 安装
-y 自动回答yes
linux  软件安装 - 图17
linux  软件安装 - 图18

3.2.3 升级命令

yum -y update 包名
选项:
update 升级
-y 自动回答yes

如果后面不接包名 则代表升级所有的软件包包括系统的内核 慎用!!!

3.2.4 卸载命令

yum -y remove 包名
选项:
remove 卸载
-y 自动回答yes

yum卸载软件包 则会卸载跟该软件包所依赖的软件包 但该所依赖的软件包可能被多个软件包或者系统内核使用,则会导致一些软件或者系统崩溃 对文件包尽量不适用yum卸载

3.2.5 yum软件组管理命令

yum grouplist
列出所有可用的软件组列表

在CRT中用的是中文,则显示的为汉字 在主机上使用该命令则会看到所对应的英文组名
linux  软件安装 - 图19
yum groupinstall 软件组名(如果组名有空格 则需要用双引号括起来)
安装指定软件组,组名可以由grouplist 查询出来

yum groupremove 软件组名
卸载指定软件组

3.3 光盘yum源搭建

在无网络的时候 使用yum

1.挂载光盘

2.让网络yum源文件失效 (将除Medio其他文件名改名)

linux  软件安装 - 图20

3.修改光盘yum源文件

修改配置文件一定要注意书写格式 比如注释必须是顶头写
linux  软件安装 - 图21

4.源码包管理

4.1 源码包和RPM包的区别

4.1.1 区别

安装之前的区别:概念上的区别
安装之后的区别:安装位置的不同
linux  软件安装 - 图22
linux  软件安装 - 图23

4.1.2安装位置的不同所带来管理方式不同

linux  软件安装 - 图24
linux  软件安装 - 图25
linux  软件安装 - 图26

4.2 源码包安装过程

4.2.1 安装准备

1.安装C语言编译器

2.下载源码包

4.2.2 安装注意事项

linux  软件安装 - 图27

4.2.3 源码包安装过程

linux  软件安装 - 图28

4.2.4 ./configure 软件配置与检查

查看 INSTALL 文件有操作手册

  1. 定义需要的功能选项。(安装目录为必选)linux  软件安装 - 图29

  2. 检测系统环境是否符合安装要求

  3. 吧定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑

4.2.5 编译

1.make 编译
如出错需执行 make clean
2.make install 编译安装

4.2.6 源码包的卸载

不需要卸载命令 直接删除安装目录即可。不会遗留任何垃圾文件。

4.2.7 小结

如该软件只提供给自己使用rpm包,
如该软件给用户使用 则使用源码包(可以自定义配置软件)

5.脚本安装包与软件包选择

5.1脚本安装包

linux  软件安装 - 图30

5.2Webmin

5.2.1 Webmin 的作用

linux  软件安装 - 图31

5.2.2 Webmin 安装过程

1.下载软件
地址去官网获取
2.解压缩,并进入加压缩目录
需要提前下载Perl
3.执行安装脚本