centos7+httpd+createrepo创建在线yum源

创建在线yum源教程

适用场景:客户部署的环境访问互联网受限,不能执行yum安装的部署;那你可以使用本教程搭建一个局域网的在线源,解决所有介质安装的问题之外,还能够无限制复用资源,大大提高部署效率。

示例:创建mysql在线源

1、获取mysql 所有安装包

思路:我们在一台centos mini安装的系统中,打开yum cache功能,该功能会保存所有yum安装的包。按照官方要求 yum安装一遍mysql,即可获得所有安装包。

    1)打开cache功能,将keepcache 值改为1

         vi /etc/yum.conf

         keepcache=1

    2)yum安装mysql,如果没有源,请先到官方获取源地址。

         yum install -y mysql-community-server

    3)  到cache目录将所有安装包拷贝至一个文件夹,默认的安装包都是根据类型分别放置,使用起来不方便。

         cd /var/cache/yum/x86_64/7/

         ll

         drwxr-xr-x. 4 root root  183 Aug 10 15:44 base
         drwxr-xr-x. 4 root root   92 Aug  7 10:55 cdn
         drwxr-xr-x  4 root root 4096 Aug 10 15:44 cloudera-manager
         drwxr-xr-x. 4 root root 4096 Aug  8 18:38 extras
         -rw-r--r--  1 root root  739 Aug 10 15:59 timedhosts
         -rw-r--r--  1 root root    0 Aug  9 15:11 timedhosts.txt
         drwxr-xr-x. 4 root root 4096 Aug  8 18:38 updates

        

         示例拷贝其中一个,以此类推,全部拷贝至一个文件夹

         cp base/packages/* /home/reposource

      这样,你就得到了所有的安装mysql所需要的安装包。

 2、格式化yum源文件

思路:使用createrepo 命令格式化源文件。

      1)如没有安装,请下载:

          yum instlall -y createrepo

      2) 格式化yum源

          createrepo /home/reposource

 3、搭建httpd服务使文件能够使用流行的http协议远程访问

      1) 安装启动httpd

          yum install -y httpd

          systemctl start httpd

      2)将repo文件夹拷贝至httpd的默认根目录下:

          cp -r /home/reposource /var/www/html/

      3)  配置httpd,解决名称显示不全的问题

           在如下页签内,添加两行红字部分。

<Directory "/var/www/html">
    #
    ... ...

    Options Indexes FollowSymLinks
    IndexOptions NameWidth=200 DescriptionWidth=128

    ... ...

    #
</Directory>

      4) 访问http源

          http://{{you_service_ip}}/reposource

 

到这一步,你可以在远程repo文件中指向这个IP的yum源安装mysql了。

相关文章