• [Linux]-搭建基于内部网络yum仓库


    YUM是什么?

    YUM 主要用于自动安装、升级 rpm 软件包,它能自动查找并解决 rpm 包之间的依赖关系。要功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的 repository(件仓库),这个软件仓库我们习惯称为 yum 源。网络上有大量的 yum 源,但由于受到网络环的限制,导致软件安装耗时过长甚至失败。特别是当有大量服务器大量软件包需要安装时,慢的进度条令人难以忍受。因此我们在优化系统时,都会更换国内的源。相比较而言,本地 YUM 源服务器最大优点是局域网的快速网络连接和稳定性。有了局域网中YUM 源服务器,即便在 Internet 连接中断的情况下,也不会影响其他 YUM 客户端的软件安装升级。

     YUM源?

     (1)要成功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种 rpm 软件包的repository(软件仓库),这个软件仓库我们习惯称为 yum 源,
    (2)网络上有大量的 yum 源,但由于受到网络环境的限制,导致软件安装耗时过长甚至失败,特别是当有大量服务器大量软件包需要安装时,缓慢的进度条令人难以忍受,因此我们在优化系统时,都会更换国内的源
    (3)相比较而言,本地 YUM 源服务器最大优点是局域网的快速网络连接和稳定性,有了局域网中的 YUM 源服务器,即便在 Internel 连接中断的情况下,也不会影响其他 YUM 客户端的软件安装和升级。

     YUM配置

     yum的配置文件信息在/etc/yum.repos.d/下,我们配置的是自己的网络yum源,所以这些文件我们都把它移(mv)到别的地方。

    [root@localhost ~]# cd /etc/yum.repos.d/
    [root@localhost yum.repos.d]# ls
    CentOS-Base.repo CentOS-Base.repo.bak
    CentOS-Media.repo CentOS-Debuginfo.repo 
    CentOS-Vault.repo

     服务端的配置

    1、在 / 下创建一个文件夹放置我们的安装包

    [root@localhost ~]# mkdir /yum_source_pck
    [root@localhost ~]# cd /yum_source_pck/
    [root@localhost yum_source_pck]# 
      # 上传 rpm 包到此目录,此目录下面还可以包括文件夹
      获取 rpm 软件包的几种方法
       (1) 开启 YUM 缓存
       (2) yumdownloader pcre-devel openssl-devel # 只下载软件不安装

     2、本地系统挂载光盘

    mount /dev/cdrom /mnt/
    [root@localhost yum_source_pck]# cp /mnt/Packages/* /yum_source_pck/          #4G左右文件,时间可能较长
    [root@localhost yum_source_pck]# du -sh            #查看文件大小

    3、安装createrepo软件,用于生成yum仓库的软件

    [root@localhost ~]# createrepo -pdo /yum_source_pck/ /yum_source_pck/        //初始化
    Spawning worker 0 with 3995 pkgs
    ......        //部分内容省略
    Sqlite DBs complete
    [root@localhost ~]# createrepo --update /yum_source_pck/                //每加入一个rpm包就要更新一次

     4、使用python命令把80端口打开,这个地方需要在包的路径下面,通过网页把内容发布出去

    [root@localhost ~]# cd /yum_source_pck/
    [root@localhost yum_source_pck]# python -m SimpleHTTPServer 80 &> /dev/null &

     用这个&意思是放在后台一直运行,要不然就访问不到

    我们也可以访问测试一下是否可以连接

    lsof -i :80

     

    客户端

    [root@aery ~]# cd /etc/yum.repos.d/               
    [root@aery yum.repos.d]# vim yum.repo             //编辑 YUM 配置文件
     [yum] 
     name=yum install
     baseurl=http://192.168.111.129
     enabled=1
     gpgcheck=0
    
    [root@aery yum.repos.d]# yum clean all                //清除 yum 缓存
    Loaded plugins: fastestmirror, refresh-packagekit, security
    Cleaning repos: inside
    Cleaning up Everything
    [root@aery yum.repos.d]# yum makecache                //更新 YUM 缓存

     使用yum安装测试

    yum -y install dhcp

    错误信息排查

    如果出现这样的错误,进行下面的操作,删除rpm缓存,就是我们的清除yum缓存后有新的部分缓存

    rm -rf /var/lib/rpm/__db.*

     

    出现这样的执行,杀死这个yum程序,不能多线程

    killall -9 yum
  • 相关阅读:
    单元测试笔记
    centos7安装rabbitmq
    spring cache之redis使用示例
    ObjectMapper序列化时间
    安装alertmanager
    prometheus安装
    Ribbon配置随访问策略
    优化if..else代码的两种方式
    spring bean的生命周期
    idea热部署
  • 原文地址:https://www.cnblogs.com/chenwz/p/7681774.html
Copyright © 2020-2023  润新知