一、linux安装包分类
1.Linux源码包
源码包就是一大堆源代码程序,是由程序员按照特定的格式和语法编写出来的
2.Linux RPM二进制包
二进制包,也就是源码包经过成功编译之后产生的包。由于二进制包在发布之前就已经完成了编译的工作,因此用户安装软件的速度较快(同 Windows下安装软件速度相当),且安装过程报错几率大大减小,需要自己解决软件的依赖关系。
3.Yum安装包
基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
二、Linux源码包
源码包一般包含多个文件,为了方便发布,通常会将源码包做打包压缩处理,Linux 中最常用的打包压缩格式为“tar.gz”,因此源码包又被称为 Tarball。
源码包好处:
-
开源。如果你有足够的能力,则可以修改源代码。
-
可以自由选择所需的功能。
-
因为软件是编译安装的,所以更加适合自己的系统,更加稳定,效率也更高。
-
卸载方便。
源码包不足:
-
安装过程步骤较多,尤其是在安装较大的软件集合时,容易出现拼写错误。
-
编译时间较长,所以安装时间比二进制安装要长。
-
因为软件是编译安装的,所以在安装过程中一旦报错,新手很难解决
二、RPM二进制包安装过程:
1.解压安装包 tar
2. . /confignre 检测安装环境,添加减少的功能,指定安装路径
3. Make 编译 -j2 使用两核编译,速度更快
4.make install 将二进制程序和相关文件拷入指定的文件夹
2.1、Linux RPM二进制包的安装命令
命令:rpm 选项 软件名
选项:-q 查看有没有安装
-ql 显示所有的文件列表
-qc 显示软件配置文件
-ivh 安装软件
-e 卸载
三、yum 安装实现过程
首先要有安装包,安装包可以通过以下方式获得的:
1.外界设备 挂载提供软件包
把安装包拷入到U盘,光盘等,用挂载的方式,挂载到系统里面然后访问设备,运行安装包。
2.根据yum服务器仓库,网络下载
先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。
yum需要依赖于环境,依赖于服务端和客户端,允许跨网络。
服务器:
-
RPM包 (Packages文件夹中)
-
元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)
客户端的配置文件中
baseurl=地址 一定要写到到 这两个文件夹 repodata packages 的上级目录
最终形成两个文件夹Packages (包文件夹一般取名packages)和 repodata(元数据文件夹)
仓库类型:
-
光盘的仓库基本仓库 比较常用的
-
epel扩展仓库 比较新
四、如何实现安装服务
首先客户端根据配置文件,找到yum仓库位置;其次,yum服务器提供下载元信息;再次,客户端根据元信息,找到对应包的的位置;最后,将安装包下载到本地,进行安装。
yum不但检查还解决依赖关系,下载软件需要使用网络去服务器下载。
本地yum下载命令:
mont /dev/sr0 /mnt 挂载光驱,提供安装包和元数据
cd /etc/yum.repos.d/ 切换到客户端的指定目标
mkdir bak 建立文件夹存放网络yum仓库的配置文件
mv *.repo. bak 将网络源移走,减少干扰
vim local.repo 编写本地yum仓库
【local】
name=local
baseurl=file:///mnt
gpgcheck=0
yum clean all 清理缓存
yum make cache 重新构建元数据