为什么需要这样:
centos7在2024年6月30日,生命周期结束,官方不再进行支持维护,官方的yum源下线
可替代的在线yum源:
如何搭建本地yum源,并局域网使用:
参考了网上很多搭建的方法,大多需要用到ftp或者nginx,在此提供另外一个方式 :
先说缺点:使用此方法搭建的yum源,需要自己的系统为yum源所用镜像安装,否则可能导致 yum安装时报错(yum源的包还没自己系统自带包的版本新)
下载镜像包:
wget https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2009.iso
挂载镜像:
mount -o loop /mnt/CentOS-7-x86_64-Everything-2009.iso /mnt/CentOS-7
添加开机自动挂载:
vim /etc/fstab
/mnt/CentOS-7-x86_64-Everything-2009.iso /mnt/CentOS-7 iso9660 defaults,loop 0 0
此时本地yum源要用的安装包已经准备好,接下来使用centos7自带python2将它公布出去,使用SimpleHTTPServer模块,如果没有需要pip安装(端口可以自己修改):
cd /mnt/CentOS-7
nohup python -m SimpleHTTPServer 9000 >> /root/yum/CentOS-7/nohup.out 2>&1 &
在python3中,SimpleHTTPServer 模块已经被移除,并替换成了 http.server 模块:
python3 -m http.server 9000
设置开机自启:
crontab -e
@reboot sleep 20 && cd /mnt/CentOS-7 && nohup python -m SimpleHTTPServer 9000 > /root/yum/CentOS-7/nohup.out 2>&1 &
开启防火墙:
firewall-cmd --permanent --add-port=9000/tcp
firewall-cmd --reload
使用你的yum源,修改yum文件,填上你的服务器ip:
rm -rf /etc/yum.repos.d/*
cd /etc/yum.repos.d/
cat <<EOF > CentOS-Base.repo
[local]
name=local
baseurl=http://服务器ip:9000
gpgcheck=0
enabled=1
EOF
此方法用于项目实施交付非常方便,没有之一。
推荐有用好文章:
同步阿里云镜像到本地,在本地搭建YUM仓库https://www.cnblogs.com/music378/p/7993318.htmlCentos 7 搭建本地yum源
https://blog.youkuaiyun.com/zhangshaohuas/article/details/109777538