搭建一个局域网http的yum源


1. 先创建一个目录,作为存在rpm包的目录
mkdir /data/yumdata
2. 拷贝ISO镜像文件中的rpm包到/data/yumdata/
mount /dev/cdrom /mnt/
cp /mnt/Packages/*rpm /data/yumdata
【小常识】 可以在/data/yumdata/下面创建子目录,然后把rpm包放到子目录下面,也可以被识别到
3. 创建repository
createrepo /data/yumdata/
如果rpm包有增加,需要执行
createrepo --update /data/yumdata/
4. 安装nginx,提供http服务
yum install epel-release
yum install nginx
当然,如果无法使用yum,需要下载nginx源码包,并编译安装
配置nginx.conf,使其可以通过IP地址访问到/data/yumdata
参考配置文件:
    server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        root         /data/yumdata;
        autoindex on;

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }
编辑完配置文件,启动nginx服务
systemctl start nginx
5. 客户端上配置repo文件
cd /etc/yum.repos.d
mkdir bak
mv *.repo  bak/  //把系统自带的repo挪走
vim my.repo //内容如下
[aming]
name=myserver
baseurl=http://192.168.133.140
gpgcheck=0
enabled=1
6.  做一个镜像yum源
比如可以把系统默认的源给镜像到局域网来,思路是用rsync工具把远程的rpm包同步到这台局域网的对应目录下即可。
rsync -av rsync://mirrors.ustc.edu.cn/centos/7/os/x86_64/Packages/  /data/yumdata/
7. 当局域网的rpm库有更新时,除了服务端执行“createrepo  –update /data/yumdata/”外,客户端上也需要执行
yum  clean all   //删除缓存