背景:
内网生产环境无法访问外网,需构建内网yum源
1、下载插件
#下载插件
[root@ecs-853b-0729549 ~]# yum -y install wget yum-utils createrepo
createrepo:用于生成yum源各软件之间的依赖索引。
yum-utils:安装后可使用 yumdownloader 命令下载所需软件包。
reposync:Reposync用于将远程yum存储库同步到本地,使用yum检索包的目录
2、配置yum源
下载阿里源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
查看配置好的网络源id
yum repolist
3、将yum源拉到本地服务器上
创建目录
mkdir /data/soft/yum
拉取yum源到本地
base:
reposync -r base -p /data/soft/yum
epel
reposync -r epel -p /data/soft/yum
extras
reposync -r extras -p /data/soft/yum
updates
reposync -r updates -p /data/soft/yum
reposync命令参数
-c [file] 指定配置文件运行(默认配置文件是 /etc/yum.conf )
-q 静谧运行
-v 显示详细操作
-h 获取帮助
-b 尝试使用最佳的软件包版本
-C 只从系统缓存中运行,不更新缓存
-R [min] 最大命令等待时间
-y 所有回答都是 yes
-x [package] 排除哪些包
-n repoid=[] 只下载最新的包,相同的跳过
-p 指定下载路径
--delete 删除已不在仓库中的本地软件包
生成索引依赖
base
createrepo /data/soft/yum/base
epel
createrepo /data/soft/yum/epel
extras
createrepo /data/soft/yum/extras
updates
createrepo /data/soft/yum/updates
4、配置yum源的url地址
选择nginx配置yum源的共享目录
[root@ecs-853b-0729549 yum]# vim /etc/nginx/conf.d/yum.conf
server {
listen 8088;
server_name 192.168.6.176;
location / {
root /data/soft/yum; ##yum源主目录
autoindex off;
autoindex_exact_size off;
autoindex_localtime on;
charset utf-8;
index index.html index.htm;
}
}
]
[root@ecs-853b-0729549 yum]# systemctl start nginx
下面需要在内网的其他主机上配置yum文件,保证能连接到yum源上
##CentOS-Base.repo文件,配置base,extras,updates源的相关参数
[root@ecm-jiwkmh-0001 ~]# vim /etc/yum.repos.d/CentOS-Base.repo
[base] ##base源
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://192.168.6.176:8088/base/
gpgcheck=0
[updates] ##updates源
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://192.168.6.176:8088/updates/
gpgcheck=0
[extras] ##extras源
name=CentOS-$releasever
enabled=1
failovermethod=priority
baseurl=http://192.168.6.176:8088/extras/
gpgcheck=0
#[epel]
#name=Extra Packages for Enterprise Linux 7 - $basearch
#enabled=1
#failovermethod=priority
#baseurl=http://192.168.6.176:8088/epel/
#gpgcheck=0
重建yum缓存
yum clean all
yum makecache