软件仓库说明
红帽系列采用YUM作为其软件包工具。在RHEL8,新增了DNF,在YUM基础上进行了性能上的优化,具备更高的效率,且支持多线程同事安装软件。DNF不能说是YUM的替代品,而是YUM的升级版本,其命令参数和YUM基本保持一致,在执行软件安装的时候,RHEL8既可以使用YUM,也可以使用DNF
无论是YUM还是DNF,最终调用的都是软件仓库,了解软件仓库的配置方法,针对不同场景,我们可以配置合适的仓库。那么软件仓库该如何配置呢,这就是本文所要讲述的内容了。
软件仓库的配置目录位于/etc/yum.repo.d,里面包含了不同的仓库,除了自带了仓库,还可能存在第三方软件(Zabbix、MySQL等)或用户自定义的仓库配置文件。所有的配置文件后缀均以.repo结尾
这里以火山引擎Alma Linux的配置为例:
[baseos]
name=AlmaLinux $releasever - BaseOS
baseurl=https://mirrors.ivolces.com/almalinux/$releasever/BaseOS/$basearch/os/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-AlmaLinux
配置说明:
参数 | 解释 |
[baseos] | 仓库名称。具有唯一性的标识名称,不应与其他软件仓库发生冲突 |
name | 描述信息。不要因为写着name,而认为它表示的是仓库名。作为描述信息,应使用一些介绍性的词,易于识别软件仓库的用途 |
baseurl | 仓库位置。软件报的获取方式,可以使用FTP、HTTP方式下载,也可以使用本地地址(协议类型使用file关键字) |
enabled | 是否启用。1表示启用仓库,0表示禁用仓库 |
gpgcheck | 是否校验。设置该仓库是否校验文件,1表示校验,0表示不检验 |
gpgkey | 公钥位置。如果gpgcheck设置为1,即启用校验,则此处需写明公钥文件的位置。若不开启检验,此处可省略不写 |
配置完成后,需要执行命令重新生成缓存
yum makecache
本地仓库
上述例子讲述的是使用采用远程仓库的使用,但其实很多时候,我们的服务器是没有外网权限,毕竟将自己的业务服务器放到外网,尤其是一些核心服务器,势必会增加一定的安全风险。因此,企业内部服务器绝大部分都不允许连接外网。
又不能上网,又要安装软件,那怎么办呢?听起来很矛盾呢。作为软件仓库,既然有远程,那肯定也有非远程的类型,而非远程仓库就是本地私有化仓库,简称本地仓库。这里介绍的是通过在本地挂载ISO镜像文件方式,在本机搭建本地仓库的方法
这里提供一个本地仓库配置样例:
# 挂载ISO镜像到/mnt
mkdir /mnt/isoimage
mount -t iso9660 -o ro,loop /root/image.iso /mnt
# 上面的挂载命令也可以省略参数,因为系统会自动识别文件类型,如下:
mount /root/image.iso /mnt
# 注意,/root/image.iso是我的镜像文件完整路径,
# 当前在root用户的家目录下,这里要根据自己的情况修改
# 创建local.repo文件
vim /etc/yum.repo.d/local.repo
# 内容如下:
[local]
name=Local image repo
baseurl=file:///mnt
enabled=1
gpgcheck=0
# 生成缓存信息
yum makecache
如果是懂些技术的小伙伴应该发现了一个问题,上述的本地仓库没错,但可能强调的是本机,这样做也就只有本地能访问,其他主机访问不了,无法实现共享,有很大的局限性,也不符合实际环境中的使用场景。所谓独乐乐不如众乐乐。关于这部分内容,我们放到下期介绍和讲解,敬请期待~