搭建环境的时候有时会遇到无法通外网的情况,而原本只要一句yum install 就能解决的问题,变得极其复杂,介于此搭建一个局域网内的yum源变得十分有必要。核心思路为下载一个Centos完整镜像包,包里包含了常用的rpm包,将其挂载出来,再利用
nginx去访问即可
配置本地源
1、下载Centos镜像:CentOS-7-x86_64-Everything-2009
2、下载完毕后上传至yum源服务器,
mkdir /mnt/yum-iso
mount -o loop CentOS-7-x86_64-Everything-2009.iso /mnt/yum-iso/
#删除其他repo源,保留一个repo文件写入以下内容
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/yum-iso/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
yum clean all后即可使用本地源
生成可访问的源
需要先安装createrepo软件,所需要的软件我会统一放在文章末,安装完毕后执行createrepo -u -d /mnt/yum-iso
另外再安装一个nginx,负责监听其他服务器的安装请求
server {
listen 80;
server_name localhost;
root /mnt;
index index.html;
}
在客户端服务器配置yum源
[c7-media]
name=CentOS-$releasever - Media
baseurl=http://192.168.211.157/yum-iso
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
遇见的问题
error was [Errno 2] Local file does not exist:
删除yum源服务器上的/mnt/yum-iso/repodata里的文件再重新执行createrepo --update /mnt/yum-iso即可
mount: /dev/loop1 is write-protected, mounting read-only
此时可把iso挂载出来,再把挂载出的内容复制到另外一个文件夹里,再createrepo这个复制出来的文件夹即可,注意查看所要复制的磁盘空间是否够,预计9.6G.
部署包下载:
链接:https://pan.baidu.com/s/1PK181WZfu0-YzhOL2t-lgw
提取码:r8te