东北街溜子--手把手教你创建本地yum私有仓库

【问题】在局域网环境中,由于不能连接公网安装组件,所以修改yum安装源为局域网的服务。

为了完成局域网的各种软件安装,需要自建YUM本地仓库。本教程以centos7为例,搭建本地yum私有仓库,机器需要联网,仓库创建成功后,导出虚机,在局域网内导入虚机,其它机器yum源指向此机器即可。(详见1.6 yum源修改过程)

本教程所使用rpm包下载地址如下:

链接:https://pan.baidu.com/s/1BxvJW5DXkMfn7be6G51UcA?pwd=ubzk

提取码:ubzk

本文使用的nginx作为下载服务容器。

1.1 nginx组件部署实现

1、nginx安装执行文件

       准备好离线安装文件【nginx-1.20.1-10.el7.x86_64.rpm】

        rpm -ivh nginx-1.20.1-10.el7.x86_64.rpm

图 1

3、启动nginx

    systemctl start nginx

4、设定开机启动

    systemctl enable nginx

图2 

注意:如果不能访问需要注意防火墙的设置

(或者临时关闭防火墙systemctl stop firewalld)

5、修改默认登录页信息

    vi    /etc/nginx/nginx.conf

修改前:

图3

修改后:

图4

6、热加载配置信息

    systemctl  reload nginx

7、创建目录

    mkdir    /usr/share/nginx/html/pack

1.2 nginx组件部署验证

1、浏览器验证(空目录)

图5

1.3 yum源数据部署实现

1、安装rsync工具

    准备好离线安装文件【rsync-3.1.2-4.el7.x86_64.rpm】

    rpm -ivh    rsync-3.1.2-4.el7.x86_64.rpm

图6

2、同步数据

       在可以上网的机器上从外部源同步数据。(或者直接复制已有的数据)

rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/os/x86_64/Packages//usr/share/nginx/html/pack/centos/7/os/x86_64/Packages/

rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/extras/x86_64/Packages//usr/share/nginx/html/pack/centos/7/extras/x86_64/Packages/

rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/updates/x86_64/Packages//usr/share/nginx/html/pack/centos/7/updates/x86_64/Packages/

rsync-avz --delete rsync://mirrors.ustc.edu.cn/centos-vault/7.0.1406/centosplus/x86_64/Packages//usr/share/nginx/html/pack/centos/7/centosplus/x86_64/Packages/

提供几个支持rsync同步的网站

mirrors.ustc.edu.cn

mirrors.tuna.tsinghua.edu.cn

mirrors.kernel.org

mirrors.neusoft.edu.cn

3、安装createrepo工具

       准备好离线安装文件

【createrepo-0.9.9-28.el7.noarch.rpm】

【deltarpm-3.6-3.el7.x86_64.rpm】

【python-deltarpm-3.6-3.el7.x86_64.rpm】

    rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm

    rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm

    rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm

图7

4、使用createrepo创建元数据

createrepo/usr/share/nginx/html/pack/centos/7/os/x86_64/

createrepo/usr/share/nginx/html/pack/centos/7/extras/x86_64/

createrepo/usr/share/nginx/html/pack/centos/7/updates/x86_64/

createrepo/usr/share/nginx/html/pack/centos/7/centosplus/x86_64

1.4 yum源数据部署验证

1、浏览器查看,对应的目录下会生成repodata目录,下层目录有repomd.xml文件。

1.5 yum源数据更新

1、下载需要缺少的rmp文件放到如下目录。

    cd     /usr/share/nginx/html/pack/centos/7/os/x86_64/Packages/

2、使用createrepo更新元数据

    createrepo    --update /usr/share/nginx/html/pack/centos/7/os/x86_64/

1.6 yum源修改过程

1、备份原始文件CentOS-Base.repo

    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_back

2、添加新的yum源信息

    cat>> /etc/yum.repos.d/CentOS-Base.repo << eof

添加内容:

[base]

name=CentOS-7    - Base

baseurl=http://192.168.1.220/centos/7/os/x86_64/

enabled=1

gpgcheck=0


#released    updates

[updates]

name=CentOS-7

baseurl=http://192.168.1.220/centos/7/updates/x86_64/

enabled=1

gpgcheck=0


#additional    packages that may be useful

[extras]

name=CentOS-7

baseurl=http://192.168.1.220/centos/7/extras/x86_64/

enabled=1

gpgcheck=0


#additional    packages that extend functionality of existing packages

[centosplus]

name=CentOS-7    - Plus

baseurl=http://192.168.1.220/centos/7/centosplus/x86_64/

enabled=1

gpgcheck=0


eof


图8

3、清除所有缓存

yum    clean all

4、建立新缓存

yum    makecache

图9

1.7 yum源修改后确认

1、查看yum源列表

yum repolist

图10
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容