2024-03-11
Linux
00
请注意,本文编写于 36 天前,最后修改于 36 天前,其中某些信息可能已经过时。

目录

CentOS制作离线源
环境准备
制作离线源步骤
制作软件源
使用离线源
本地使用,适合只需要一台服务器使用的情况。
配置http软件源,适合内网多台机器使用。

CentOS制作离线源

Yum(软件包管理器,全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。 通常情况下,我们内部的服务器不允许直接连外网,要安装某些服务器比较麻烦,还有各种依赖包的问题。如果制作一个本地局域网离线yum源仓库,再安装软件包就会方便许多。制作本地yum的方式有多种,这里以nginx方式进行实验。

环境准备

准备一台能联网的机器最好和目标服务器版本一致(理论上版本差距不是太大即可,但是最好完全一样),用来下载软件包和制作软件源。

制作离线源步骤

在公网服务器上,可以先修改为阿里的软件源

bash
cd /etc/yum.repos.d/ mkdir bak mv *.repo ./bak wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

下载两个工具,yum-utils、createrepo,yum-utils用来下载rpm包,createrepo用来创建索引文件

bash
yum install -y yum-utils yum install -y createrepo

下载准备安装的软件,如ntpd下载目录(根据自己需要修改路径,名称无所谓)

bash
yumdownloader --resolve --destdir=/data/nginx/repo/ntp ntp

制作软件源

bash
createrepo -v /data/nginx/repo

使用离线源

从上面我们介绍中可以看到,离线源配置的就是目录文件,所以我们可以根据自己情况使用本地路径或者http路径来提供软件源。(二者选其一即可)

本地使用,适合只需要一台服务器使用的情况。

将文件夹拷贝到目标服务器,删除/etc/yum.repo.d下的文件 vi /etc/yum.repo.d/ntp.repo,内容如下,路径根据实际调整 #本源的名字(不能和其他重复)

bash
[base-ntp] name=CentOS7.6-ntp baseurl=file:///data/nginx/repo enabled=1 # 是否开启本地 gpgcheck=0 # 是否开启校验

更新本地缓存

bash
yum clean all yum make cache

安装软件

bash
yum install ntp

配置http软件源,适合内网多台机器使用。

安装http服务,如apache/nginx,本示例采用docker nginx来制作,选择自己熟悉的http服务即可。 docker-compose.yml配置如下:

yaml
version: '2' services: nginx: restart: always image: nginx:latest ports: - 80:80 hostname: nginx volumes: - ./conf:/etc/nginx/conf.d - /data/nginx/repo:/web/download

nginx配置文件文件如下(仅增加了开启目录的配置autoindex相关):

bash
server { listen 80; location / { root /web/; autoindex on; autoindex_exact_size off; autoindex_localtime on; } }

通过浏览器访问该服务,看看是否能看到相应的rpm包信息。 配置目标服务器的repo

bash
vi /etc/yum.repo.d/ntp.repo # repo配置如下 [base-ntp] name=CentOS7.6-ntp baseurl=http://47.92.158.127/download/ enabled=1 gpgcheck=0 priority=1

更新本地缓存

bash
yum clean all yum makecache

安装软件

bash
yum install ntp
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:XiaoWang0777

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

本网站由 又拍云Logo 提供CDN加速/云存储服务 萌ICP备20240377号