1、由于CentoS7源停止了更新,阿里源在线更新速度太慢,也缺少第三方yum源,因此基于VmShell国际线路搭建一台yum源服务器满足这一需求,同时网络层面策略只允许此yum源服务器每周日晚限时联网同步阿里云的yum源保持最新。
2、准备亚洲服务器用作yum源服务器。
3、系统版本:CentOS 7.9
实操步骤:
一、添加阿里云yum源
备份原系统的repo
mkdir /etc/yum.repos.d/backup && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup && screen -S centos
添加阿里云yum源并缓存(Centos-7.repo是软件仓库配置文件,epel-7.repo是扩展源、提供额外的软件包)
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo && curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo && yum clean all && yum makecache && yum repolist
二、安装相关软件:
yum -y update && yum -y upgrade && yum -y install python-gobject python-firewall wget make cmake gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel httpd yum-utils createrepo
备注:yum-utils:yum-utils是yum的工具包集合,reposync一个同步工具。
createrepo:createrepo是一个对rpm文件进行索引建立的工具,就是对指定目录下的rpm文件进行检索,把每个rpm文件的信息存储到指定的索引文件中,这样方便远程yum命令在安装更新时进行检索。
httpd:通过Apache软件提供web服务,也可以使用nginx。
三、同步阿里云yum源软件包到本地服务器指定目录/mirror(自定义目录) :
创建用户apache存放软件包目录/mirror,(chown设置文件所有者和文件关联组,chmod控制用户对文件的权限)
mkdir -p /mirror
chown -R apache:apache /mirror
chmod -R 755 /mirror
同步阿里云yum源软件包
参数-n指下载最新软件包,-p指定目录,指定本地的源--repoid(如果不指定就同步本地服务器所有的源),下载过程比较久(10个小时左右)
reposync -n --repoid=extras --repoid=updates --repoid=base --repoid=epel -p /mirror
我们可以输入该命令显示目录文件夹大小: du -sh /mirror/*
四、创建仓库索引
createrepo -po /mirror/base/ /mirror/base/
createrepo -po /mirror/extras/ /mirror/extras/
createrepo -po /mirror/updates/ /mirror/updates/
createrepo -po /mirror/epel/ /mirror/epel/
五、更新数据源
createrepo --update /mirror/base/
createrepo --update /mirror/extras/
createrepo --update /mirror/updates/
createrepo --update /mirror/epel/
六、启动并配置Apache服务
yum install -y httpd
6.1、启动Apache(httpd)服务
systemctl start httpd
systemctl enable httpd
systemctl status httpd
6.2、系统防火墙放行80端口(apache服务使用的是80和443端口)
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
success
firewall-cmd --reload
success
备注:必要时可以运行 systemctl restart httpd 重启一下服务。
6.3、关闭selinux(SELINUX=disabled),方法:1、利用“vim /etc/sysconfig/selinux”命令打开selinux文件;2、将文件中的“SELINUX=enforcing”修改为“SELINUX=disabled”;3、修改保存后,重新启动即可。
6.4、配置httpd.conf文件
文件路径/etc/httpd/conf/httpd.conf
DocumentRoot "/mirror/"
<Directory "/mirror/">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Require all granted
</Directory>
注意:上面配置的httpd.conf文件,需要找到如下图DocumentRoot字样的行进行更改,而不是直接复制粘贴插入。
6.5、修改web界面的 index.html 文件
###修改Apache默认首页index.html,直接复制粘贴执行
cat << EOF > /usr/share/httpd/noindex/index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>VmShell开源提供CentOS 7.9 镜像</title>
<script>document.createElement("myHero")</script>
<style>
myHero {
display: block;
background-color: #ddd;
padding: 10px;
font-size: 20px;
}
</style>
</head>
<body>
<h1>简介</h1>
<hr>
<p>CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本,是一个稳定,可预测,可管理和可复制的免费企业级计算平台,官方停止源更新后,VmShell提供开源地址提供用户升级</p>
<hr>
<br>
<br>
<h1>VmShell开源CentOS 7 配置内部YUM源</h1>
<br>
<h2>1、备份</h2>
<myHero>mkdir /etc/yum.repos.d/backup</myHero>
<myHero>mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/</myHero>
<br>
<h2>2、下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/ </h2>
<myHero>curl -o /etc/yum.repos.d/CentOS-Base.repo http://23.173.216.66/repo/CentOS-Base.repo</myHero>
<br>
<h2>3、运行 yum clean all && yum makecache && yum -y update && yum -y upgrade 生成缓存并更新依赖</h2>
<br>
<h2>4、运行 yum repolist 查看已经生成缓存</h2>
<br>
<br>
<div>
<p><span style="font-size: 10pt;"><strong>VmShell官网:</strong><a href="https://vmshell.com">https://vmshell.com</a></span><br /><span style="font-size: 10pt;"><strong>ToToTel官网:</strong><a href="https://tototel.com">https://tototel.com</a></span><br /><span style="font-size: 10pt;"><strong>IP地址信息查询:</strong><a href="https://vmshell.com/ip.php">https://vmshell.com/ip.php</a></span></p>
<p><strong><img src="https://linuxword.com/wp-content/uploads/2024/05/vmshell-20240503logo.jpg" alt="" width="977" height="984" /><br /></strong></p>
<p><strong>关于 ToToTel,VmShell</strong> :<br />ToToTel和VmShell都是VmShell INC美国公司旗下的全球云计算品牌(由于是美国公司,请遵守美国法律要求的服务内容),其中覆盖了香港CMI(三网优化),香港BGP(移动优化),美国全媒体IP(电信/联通优化)10Gbps基础网络,自2021年成立至今已超过3年的老牌IDC基础网络提供/服务商,ToToTel采用集成度更高的PVE云服务器架构,其中BGP提供超强CPU计算性能,简洁高效.<br /><strong>支付方式</strong>:<br />支付方式包括:Paypal、支付宝、比特币、USDT 和信用卡<br /><strong>Affman提成</strong>:<br />销售金额的10.00-15.00%,支持银行和支付宝/Paypal提现!</p>
<p><img src="https://linuxword.com/wp-content/uploads/2024/04/totounlimited-logo.jpg" /></p>
<table border="1">
<thead>
<tr>
<th><span style="font-size: 10pt;">主要站点</span></th>
<th colspan="3"><span style="font-size: 10pt;">ToToTel-香港/美国无限流量服务器2024夏季促销活动</span></th>
<th colspan="3"><span style="font-size: 10pt;">VmShell-香港CMI三网优化网络2024夏季促销活动</span></th>
</tr>
<tr>
<th><span style="font-size: 10pt;">产品名称</span></th>
<th><span style="font-size: 10pt;">GT.SanJose.US-Unlimited-KVM</span></th>
<th><span style="font-size: 10pt;">BGP.HK-Unlimited-KVM</span></th>
<th><span style="font-size: 10pt;">CMI.HK-Unlimited-KVM</span></th>
<th><span style="font-size: 10pt;">CMI-Classic-KVM</span></th>
<th><span style="font-size: 10pt;">CMI-US-ChatGPT</span></th>
<th><span style="font-size: 10pt;">KVM-CMI-VPS</span></th>
</tr>
</thead>
<tbody>
<tr>
<td><strong><span style="font-size: 10pt;">配置信息</span></strong></td>
<td><span style="font-size: 10pt;">1C-1GB-10GB(SSD)</span></td>
<td><span style="font-size: 10pt;">1C-512MB-10GB(SSD)</span></td>
<td><span style="font-size: 10pt;">1C-512MB-10GB(SSD)</span></td>
<td><span style="font-size: 10pt;">1C-256MB-8GB(SSD)</span></td>
<td><span style="font-size: 10pt;">1C-512MB-8GB(SSD)</span></td>
<td><span style="font-size: 10pt;">1C-512MB-8GB(SSD)</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">数据中心</span></strong></td>
<td><span style="font-size: 10pt;">圣何塞.美国</span></td>
<td><span style="font-size: 10pt;">IT2.香港</span></td>
<td><span style="font-size: 10pt;">CMI数据中心.香港</span></td>
<td><span style="font-size: 10pt;">CMI数据中心.香港</span></td>
<td><span style="font-size: 10pt;">CMI数据中心.香港</span></td>
<td><span style="font-size: 10pt;">CMI数据中心.香港</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">网络优化</span></strong></td>
<td><span style="font-size: 10pt;">首选:联通/电信; 不推荐:移动</span></td>
<td><span style="font-size: 10pt;">最优:中国移动(移动用户首先)</span></td>
<td><span style="font-size: 10pt;">移动/联通/电信全网优化</span></td>
<td><span style="font-size: 10pt;">移动/联通/电信全网优化</span></td>
<td><span style="font-size: 10pt;">移动/联通/电信全网优化</span></td>
<td><span style="font-size: 10pt;">移动/联通/电信全网优化</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">带宽性质</span></strong></td>
<td><span style="font-size: 10pt;">共享网络-10Gbps</span></td>
<td><span style="font-size: 10pt;">共享网络-500Mbps</span></td>
<td><span style="font-size: 10pt;">CMI-独享:35Mbps</span></td>
<td><span style="font-size: 10pt;">CMI-共享:400Mbps</span></td>
<td><span style="font-size: 10pt;">CMI-共享:500Mbps</span></td>
<td><span style="font-size: 10pt;">CMI-共享:600Mbps</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">月度流量</span></strong></td>
<td><span style="font-size: 10pt;">无限流量</span></td>
<td><span style="font-size: 10pt;">无限流量</span></td>
<td><span style="font-size: 10pt;">无限流量</span></td>
<td><span style="font-size: 10pt;">1TB/Monthly</span></td>
<td><span style="font-size: 10pt;">1TB/Monthly</span></td>
<td><span style="font-size: 10pt;">2TB/Monthly</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">退款策略</span></strong></td>
<td><span style="font-size: 10pt;">不支持退款</span></td>
<td><span style="font-size: 10pt;">不支持退款</span></td>
<td><span style="font-size: 10pt;">不支持退款</span></td>
<td><span style="font-size: 10pt;">不支持退款</span></td>
<td><span style="font-size: 10pt;">支持3日内新购退款</span></td>
<td><span style="font-size: 10pt;">支持3日内新购退款</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">年付折扣</span></strong></td>
<td><span style="font-size: 10pt;">年付3折</span></td>
<td><span style="font-size: 10pt;">无需优惠码</span></td>
<td><span style="font-size: 10pt;">年付4折</span></td>
<td><span style="font-size: 10pt;">无需优惠码经典产品</span></td>
<td><span style="font-size: 10pt;">年付6折</span></td>
<td><span style="font-size: 10pt;">年付7.5折</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">优惠码</span></strong></td>
<td><span style="font-size: 10pt;">ToToU-USA30</span></td>
<td><span style="font-size: 10pt;">无需优惠码</span></td>
<td><span style="font-size: 10pt;">ToToCMIHK40</span></td>
<td><span style="font-size: 10pt;">无需优惠码</span></td>
<td><span style="font-size: 10pt;">summer60</span></td>
<td><span style="font-size: 10pt;">hksm75</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">IP属性</span></strong></td>
<td><span style="font-size: 10pt;">美国原生/纯净IP</span></td>
<td><span style="font-size: 10pt;">APNIC香港原生IP</span></td>
<td><span style="font-size: 10pt;">APNIC香港原生IP</span></td>
<td><span style="font-size: 10pt;">非香港原生IP</span></td>
<td><span style="font-size: 10pt;">原本属于美国IP/香港数据中心使用</span></td>
<td><span style="font-size: 10pt;">APNIC香港原生IP</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">流媒体</span></strong></td>
<td><span style="font-size: 10pt;">奈菲/迪士尼+/GPT/HULU/TIKTOK</span></td>
<td><span style="font-size: 10pt;">奈菲.香港/迪士尼+.香港</span></td>
<td><span style="font-size: 10pt;">奈菲.香港/迪士尼+.香港</span></td>
<td><span style="font-size: 10pt;">不支持奈菲和迪士尼+</span></td>
<td><span style="font-size: 10pt;">不支持奈菲,但支持ChatGPT</span></td>
<td><span style="font-size: 10pt;">奈菲.香港/迪士尼+.香港</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">价格</span></strong></td>
<td><span style="font-size: 10pt;">54.00 USD/年</span></td>
<td><span style="font-size: 10pt;">59.99 USD/年</span></td>
<td><span style="font-size: 10pt;">72.00 USD/年</span></td>
<td><span style="font-size: 10pt;">33.00 USD/年</span></td>
<td><span style="font-size: 10pt;">72.00 USD/年</span></td>
<td><span style="font-size: 10pt;">112.50 USD/年</span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">LG测试</span></strong></td>
<td><span style="font-size: 10pt;"><a href="http://103.182.97.218:8800" target="_blank" rel="noopener">http://103.182.97.218:8800</a></span></td>
<td><span style="font-size: 10pt;"><a href="http://103.172.135.6:7788" target="_blank" rel="noopener">http://103.172.135.6:7788</a></span></td>
<td><span style="font-size: 10pt;"><a href="http://103.235.18.130:7788" target="_blank" rel="noopener">http://103.235.18.130:7788</a></span></td>
<td><span style="font-size: 10pt;"><a href="http://156.251.176.254:7788" target="_blank" rel="noopener">http://156.251.176.254:7788</a></span></td>
<td><span style="font-size: 10pt;"><a href="http://156.251.176.254:7788" target="_blank" rel="noopener">http://156.251.176.254:7788</a></span></td>
<td><span style="font-size: 10pt;"><a href="http://156.251.176.254:7788" target="_blank" rel="noopener">http://156.251.176.254:7788</a></span></td>
</tr>
<tr>
<td><strong><span style="font-size: 10pt;">订购</span></strong></td>
<td><span style="font-size: 10pt;"><a href="https://portal.tototel.com/aff.php?aff=1&pid=12" target="_blank" rel="noopener"><span style="color: #333333;">快速订购</span></a></span></td>
<td><span style="font-size: 10pt;"><a href="https://portal.tototel.com/aff.php?aff=1&pid=10" target="_blank" rel="noopener"><span style="color: #333333;">快速订购</span></a></span></td>
<td><span style="font-size: 10pt;"><a href="https://portal.tototel.com/aff.php?aff=1&pid=11" target="_blank" rel="noopener"><span style="color: #333333;">快速订购</span></a></span></td>
<td><span style="font-size: 10pt;"><a href="https://vmshell.com/aff.php?aff=2689&pid=12" target="_blank" rel="noopener"><span style="color: #333333;">快速订购</span></a></span></td>
<td><span style="font-size: 10pt;"><a href="https://vmshell.com/aff.php?aff=2689&pid=5" target="_blank" rel="noopener"><span style="color: #333333;">快速订购</span></a></span></td>
<td><span style="font-size: 10pt;"><a href="https://vmshell.com/aff.php?aff=2689&pid=7" target="_blank" rel="noopener"><span style="color: #333333;">快速订购</span></a></span></td>
</tr>
</tbody>
</table>
<p><span style="font-size: 10pt;"><strong>香港CMI机房测试IP</strong>: <a href="https://ping.pe/156.251.176.254" target="_blank" rel="noopener">https://ping.pe/156.251.176.254</a></span><br /><span style="font-size: 10pt;"><strong>在线CMI测速网站</strong>: <a href="http://156.251.176.254:7788" target="_blank" rel="noopener">http://156.251.176.254:7788</a></span><br /><span style="font-size: 10pt;"><strong>中国CMI大陆PING</strong>: <a href="https://ping.chinaz.com/156.251.176.254" target="_blank" rel="noopener">https://ping.chinaz.com/156.251.176.254</a></span><br /><span style="font-size: 10pt;"><strong>CMI香港-SmartPing</strong>: <a href="http://156.251.176.254:8899" target="_blank" rel="noopener">http://156.251.176.254:8899</a></span></p>
<p><span style="font-size: 10pt;"><strong>香港BGP机房测试IP</strong>: <a href="https://ping.pe/103.172.135.6" target="_blank" rel="noopener">https://ping.pe/103.172.135.6</a></span><br /><span style="font-size: 10pt;"><strong>中国BGP机房大陆PING</strong>: <a href="https://ping.chinaz.com/103.172.135.6" target="_blank" rel="noopener">https://ping.chinaz.com/103.172.135.6</a></span><br /><span style="font-size: 10pt;"><strong>BGP香港-SmartPing</strong>: <a href="http://103.172.135.6:8899" target="_blank" rel="noopener">http://103.172.135.6:8899</a></span></p>
</div>
<div class="copyright">
© 版权所有: <a href="https://vmshell.com/" target="_blank">VmShell INC</a>
</div>
</body>
</html>
EOF
注意: 上文中的 http://mirrors.vmshell.com 填写自身yum源服务器的ip地址。
七、编写yum源客户端配置文件
创建repo文件夹
mkdir -p /mirror/repo/
###复制粘贴执行,注意:mirrors.vmshell.com需要更改为服务器ip地址。
cat << EOF > /mirror/repo/CentOS-Base.repo
[base]
name=CentOS- Base - mirrors.vmshell.com
failovermethod=priority
baseurl=http://mirrors.vmshell.com/base/
enable=1
gpgcheck=0
#released updates
[updates]
name=CentOS- Updates - mirrors.vmshell.com
failovermethod=priority
baseurl=http://mirrors.vmshell.com/updates/
enable=1
gpgcheck=0
#additional packages that may be useful
[extras]
name=CentOS- Extras - mirrors.vmshell.com
failovermethod=priority
baseurl=http://mirrors.vmshell.com/extras/
enable=1
gpgcheck=0
#additional packages that may be useful
[epel]
name=CentOS- Epel - mirrors.vmshell.com
failovermethod=priority
baseurl=http://mirrors.vmshell.com/epel/
enable=1
gpgcheck=0
EOF
八、客户端配置yum源
登录客户端操作系统执行以下命令(注意:mirrors.vmshell.com为yum源服务器的ip地址)
mkdir /etc/yum.repos.d/backup/
mv /etc/yum.repos.d/* /etc/yum.repos.d/backup/
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.vmshell.com/repo/CentOS-Base.repo
yum makecache
用户也可以用浏览器访问 http://mirrors.vmshell.com 查看配置客户端yum源的方法
九 、设置定时同步yum源的任务
编辑脚本
mkdir /opt/script/cron && vim /opt/script/cron/centos_yum_update.sh
#!/bin/bash
echo 'Updating Aliyum Source'
DATETIME=`date +%F_%T`
exec > /var/log/aliyumrepo_$DATETIME.log
reposync -np /mirror
if [ $? -eq 0 ];then
createrepo --update /mirror/base
createrepo --update /mirror/extras
createrepo --update /mirror/updates
createrepo --update /mirror/epel
echo "SUCESS: $DATETIME aliyum_yum update successful"
else
echo "ERROR: $DATETIME aliyum_yum update failed"
fi
添加定时任务,每周一凌晨1点执行: crontab -e
0 1 * * 1 /bin/bash /mirror/script/centos_yum_update.sh
至此,结束。。。
问题:有时服务器端的yum源仓库索引没有更新成功。
手动更新:
createrepo --update /mirror/base/
createrepo --update /mirror/extras/
createrepo --update /mirror/updates/
createrepo --update /mirror/epel/