Skip to content

VmShell提供完整版Centos7国际YUM源服务器和YUM源服务器私有云系统模板下载(可用于企业/学校等内部网络)

Notifications You must be signed in to change notification settings

FoxBary/centos7-yum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

0976c65587ed0a88083cf8144a484958

VmShell开源CentOS 7 配置内部YUM源本YUM源每晚凌晨1点自动获取最新的组件依赖提供自动更新,方便企业内网使用该模板,同时VmShell的YUM源服务器在日本,方便国际网络更新,具体方式如下:
1、备份
mkdir /etc/yum.repos.d/backup && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
2、下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.vmshell.com/repo/CentOS-Base.repo
3、运行 yum clean all && yum makecache && yum -y update && yum -y upgrade 生成缓存并更新依赖
4、运行 yum repolist 查看已经生成缓存


重要提醒:当然VmShell也将该YUM源模板提供出来用于大家下载给公司企业内网作为yum源使用(解决企业内网服务器更新YUM源的问题,仅仅只需要更换IP即可):
服务器配置:4C-4GB-50GB (SSD) ,实际模板文件为35GB大小;
服务器系统:Centos7.9 64bit
服务器用户名:root
服务器端口:22
服务器密码:000000

下载地址:  https://linuxword.com/wp-content/uploads/PVE/CentOS7-YUM.zip
如果想自己生成具体模板制作文档请见教程:VmShell国际CentOS源服务器[解决阿里源速度慢问题]

 

6b189e0c0b3cd3660caf4800bd9a3e42.jpeg@wm_2t_55m_5a625Y_3L_mZiOaXreWNjgfc_ffffffff_U2ltSGVpsz_2

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

9122d73863b82afbd1433ce23c9e24c1
二、安装相关软件:
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。

fae3862a7ee3085679ab4c9c5888830c
三、同步阿里云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/*

4d4f600a7aa0fc48765ef330619057ee
四、创建仓库索引
createrepo -po /mirror/base/ /mirror/base/
createrepo -po /mirror/extras/ /mirror/extras/
createrepo -po /mirror/updates/ /mirror/updates/
createrepo -po /mirror/epel/ /mirror/epel/

dad17cf5a9b90b5cf4c622548baa0a77
五、更新数据源
createrepo --update /mirror/base/
createrepo --update /mirror/extras/
createrepo --update /mirror/updates/
createrepo --update /mirror/epel/

2b8ec52bad1f661655507b3f752c82f2
六、启动并配置Apache服务
yum install -y httpd
6.1、启动Apache(httpd)服务
systemctl start httpd
systemctl enable httpd
systemctl status httpd

1885aa3afcbb19495324d241f7020fd4
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

64b2d8960733970efd981fcfee6d3ee9
备注:必要时可以运行 systemctl restart httpd 重启一下服务。
6.3、关闭selinux(SELINUX=disabled),方法:1、利用“vim /etc/sysconfig/selinux”命令打开selinux文件;2、将文件中的“SELINUX=enforcing”修改为“SELINUX=disabled”;3、修改保存后,重新启动即可。

26ef44596ccd1f1065acf3a7765d924c
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

注意:上面配置的httpd.conf文件,需要找到如下图DocumentRoot字样的行进行更改,而不是直接复制粘贴插入。

2419627-20230307175225756-1708326104
6.5、修改web界面的 index.html 文件
###修改Apache默认首页index.html,直接复制粘贴执行
cat << EOF > /usr/share/httpd/noindex/index.html







简介

 


 

CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本,是一个稳定,可预测,可管理和可复制的免费企业级计算平台,官方停止源更新后,VmShell提供开源地址提供用户升级

 






 

VmShell开源CentOS 7 配置内部YUM源




1、备份


mkdir /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/


2、下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/


curl -o /etc/yum.repos.d/CentOS-Base.repo http://23.173.216.66/repo/CentOS-Base.repo


3、运行 yum clean all && yum makecache && yum -y update && yum -y upgrade 生成缓存并更新依赖




4、运行 yum repolist 查看已经生成缓存





 


© 版权所有: VmShell INC




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源的方法

ab46d5cc29fa19bb59e2a7cde1d5cd66
九 、设置定时同步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
至此,结束。。。

97ea85fc79b374d1a74ae165c80acaed
问题:有时服务器端的yum源仓库索引没有更新成功。
手动更新:
createrepo --update /mirror/base/
createrepo --update /mirror/extras/
createrepo --update /mirror/updates/
createrepo --update /mirror/epel/

About

VmShell提供完整版Centos7国际YUM源服务器和YUM源服务器私有云系统模板下载(可用于企业/学校等内部网络)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published