Centos7 搭建局域网yum仓库
介绍:yum的本质依旧是把后缀名.rpm的包及其依赖下载到本地,然后按次序安装之。但是每次执行yum install xxx,会自动安装并且安装完毕后把rpm包自动删除。
下文步骤基于局域网内某台服务器已经配置了本地yum源仓库,相关操作参见另一篇文章:
https://blog.csdn.net/qq_39360187/article/details/123652329
1、安装createrepo工具
安装命令:
yum -y install createrepo
2、创建本地rpm包的repodata索引目录
createrepo /mnt/local_repo/ ps: 后续更新了其他依赖包(rpm文件)到/mnt/local_repo/目录,不需要重建,只需要update一下索引目录就好
createrepo --update /mnt/local_repo/ 更新索引目录
ls /mnt/local_repo/repodata/ 验证repodata索引目录是否创建,有文件repomd.xml文件即可
3、更改本地yum源配置
vi /etc/yum.repos.d/myrepo.repo
[myrepo]
name=local repository
baseurl=file:///mnt/local_repo #步骤2创建的仓库路径
gpgcheck=0
enabled=1
注意:[xxx]文件里的此处内容必须与文件名一致!!!
临时使用本地yum源,指定使用myrepo库:
# yum --enablerepo=myrepo --disablerepo=base,extras,updates,epellist
永久使用内网yum源,需要cd /etc/yum.repos.d/,将所有其他.repo文件里的enabled=1改为enabled=0。
4、局域网共享yum仓库
(1)用Python的http模块启动共享访问
cd /mnt/local_repo
python -m SimpleHTTPServer 8000 &>/dev/null &
缺点:过一段时间或者主机重启,该端口服务自己关停。
(2)安装httpd提供共享访问
yum install -y httpd
cp –r /mnt/local_repo/* /var/www/html/local_repo/
vi /etc/httpd/conf/httpd.conf
修改端口80为8000,防止80端口被占用;
添加:ServerName localhost:8000
关停selinux和firewalld:
systemctl stop firewalld
setenforce 0
启动httpd服务:
systemctl start httpd
systemctl enable httpd
查看8000端口是否启动:
netstat -lntp | grep 8000
(3)局域网其他机器配置访问上述yum源仓库
vi /etc/yum.repos.d/local.repo
[local]
name=Local
enabled=1
baseurl=http://192.173.10.129:8000/local_repo/ #192.173.10.129为yum源服务器地址
gpgcheck=0
验证仓库配置生效:
yum repolist
安装网络工具测试:
yum install -y net-tools