CentOS7 搭建局域网 镜像YUM 源(同步阿里 YUM 源)

系统环境:

[root@localhost ~]cat /etc/redhat-release                #系统版本

CentOS Linux release 7.6.1804 (Core)

[root@localhost ~]uname –r                                         #内核版本

3.10.0-758.el7.x86_64

[root@localhost ~] uname -m                                    #系统架构

x86_64

[root@localhost ~]echo $LANG                                #系统字符集

en_US.UTF-8

 

实验环境:

Yum源仓库服务器IP地址                   192.168.11.41        CentOS 7.6

Yum源测试客户端IP地址                   192.168.11.40        CentOS 7.6

说明:

搭建内部yum源仓库有许多种类,例如fileftphttphttps,本教程以http进行搭建内部yum源仓库

一、添加阿里云yum源并检查

mkdir /etc/yum.repos.d/bak

mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak

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 makecache

yum repolist

二、安装相关软件

yum install -y wget make cmake gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel httpd yum-utils createrepo

备注:

yum-utilsreposync同步工具

createrepo:编辑yum库工具

httpd:通过Apache软件提供web服务,也可以使用nginx

三、同步阿里云yum源软件包到本地服务器指定目录/data(自定义目录)

mkdir -p /data

chown -R apache:apache /data

chmod -R 755 /data

###参数-n指下载最新软件包,-p指定目录,指定本地的源--repoid(如果不指定就同步本地服务器所有的源),下载过程比较久

reposync -n --repoid=extras --repoid=updates --repoid=base --repoid=epel -p /data

[root@localhost ~]# du -sh /data/*

9.0G    /data/base

16G     /data/epel

321M    /data/extras

2.2G    /data/updates

四、创建仓库索引

createrepo -po /data/base/ /data/base/

createrepo -po /data/extras/ /data/extras/

createrepo -po /data/updates/ /data/updates/

createrepo -po /data/epel/ /data/epel/

问题:如果创建仓库索引提示如下错误

Worker 0: Error: Could not open local rpm file: /data/epel//Packages/p/python2-pycryptodomex-3.9.7-1.el7.x86_64.rpm: RPM Error opening Package

解决办法:提示哪个软件包打开错误就删除哪个软件包

rm -rf  /data/epel//Packages/p/python2-pycryptodomex-3.9.7-1.el7.x86_64.rpm

五、更新数据源

createrepo --update /data/base/

createrepo --update /data/extras/

createrepo --update /data/updates/

createrepo --update /data/epel/

六、启动并配置Apache服务

systemctl start httpd

systemctl enable httpd

systemctl status httpd

[root@localhost ~]# vim /etc/httpd/conf/httpd.conf

DocumentRoot "/data/"

<Directory "/data/">

    Options Indexes FollowSymLinks

    AllowOverride  None

    Order allow,deny

    Allow from all

    Require all granted

</Directory>

###修改Apache默认首页index.html,直接复制粘贴执行

cat << EOF > /usr/share/httpd/noindex/index.html

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>CentOS 7 镜像</title>

<script>document.createElement("mySite")</script>

<style>

mySite {

        display: block;

        background-color: #ddd;

        padding: 10px;

        font-size: 20px;

}

</style>

</head>

<body>

    <h1>简介</h1>

    <hr>

    <p>CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本,是一个稳定,可预测,可管理和可复制的免费企业级计算平台。</p>

    <hr>

    <br>

    <br>

        <h1>CentOS 7 配置内部YUM</h1>

    <br>

        <h2>1、备份</h2>

         <mySite>mkdir /etc/yum.repos.d/bak</mySite>

        <mySite>mv /etc/yum.repos.d/* /etc/yum.repos.d/bak</mySite>

    <br>

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

        <mySite>curl -o /etc/yum.repos.d/CentOS-Base.repo http://192.168.11.41/repo/CentOS-Base.repo</Site>

    <br>

        <h2>3、运行 yum makecache 生成缓存</h2>

    <br>

        <h2>4、运行 yum repolist   查看已经生成缓存</h2>

    <br>

    <br>

</body>

</html>

EOF

 

七、编写yum源客户端配置文件

[root@localhost ~]# mkdir -p /data/repo/


###直接复制粘贴执行

cat << EOF > /data/repo/CentOS-Base.repo

[base]

name=CentOS-$releasever - Base - 192.168.11.41

failovermethod=priority

baseurl=http://192.168.11.41/base/

enable=1

gpgcheck=0

 

#released updates

[updates]

name=CentOS-$releasever - Updates - 192.168.11.41

failovermethod=priority

baseurl=http://192.168.11.41/updates/

enable=1

gpgcheck=0

 

#additional packages that may be useful

[extras]

name=CentOS-$releasever - Extras - 192.168.11.41

failovermethod=priority

baseurl=http://192.168.11.41/extras/

enable=1

gpgcheck=0

 

#additional packages that may be useful

[epel]

name=CentOS-$releasever - Epel - 192.168.11.41

failovermethod=priority

baseurl=http://192.168.11.41/epel/

enable=1

gpgcheck=0

EOF

 

八、客户端配置Yum源

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

yum makecache

客户端浏览网页http://192.168.11.41首页提示如何配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值