0%

reposync 同步镜像源

某些情况下,我们只有内网的环境,无法很好的使用 yum 镜像源,进行安装,所以我们可以选择搭建本地镜像源站来使用。

本地镜像源站最简单的方式是使用安装的光盘或者ISO文件作为资源站点。

使用光盘

将光盘或者镜像挂载,例如挂载到:/mnt/repo 路径,然后我们需要配置文件:

/etc/yum.repos.d/CentOS-Media.repo

1
2
3
4
5
6
7
8
# CentOS-Media.repo
[CentOS-Media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/repo/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
#如果不需要gpgcheck,可让gpgcheck=0,然后注释掉最后一行即可。

挂载ISO可以使用:

mount -t iso9660 CentOS-7.iso /mnt/repo

使用 reposync 建立离线镜像站

使用 reposync 进行镜像同步,下载远程的资源到本地,好处是能够支持自定义源,支持 docker-cenginx 等等资源镜站:

同步 docker-ce :

1
2
3
4
# 同步整个资源站点,不太支持,大概3G多
reposync --repo docker-ce-stable --download_path=/local/repo/#存储路径
# 只同步最新版本,只拉取最新版本
reposync -g -l -m --repoid=docker-ce-stable --newest-only --download-metadata --download_path=/local/repo/#存储路径

配置文件:

/etc/yum.repos.d/CentOS-local.repo

1
2
3
4
5
6
# CentOS-local.repo
[local]
name=local-$releasever
baseurl=file:///local/repo/
gpgcheck=0
enabled=1

注意,源站的 repodata 并没有自动下载,需要自行打开手动下载下来。

然后就可以愉快的使用 yum install

参考资料

Setup local YUM repository problem https://forums.centos.org/viewtopic.php?t=71886

CentOS7如何利用本地光盘制作yum源 https://www.huaweicloud.com/articles/484dd78a0e56bcfff822595aea0307fd.html