Linux挂载iso镜像文件为yum源

本是古典 何须时尚 2023-10-13 19:27 80阅读 0赞

场景

工作中,经常需要在公司的内网环境节点安装一些第三方的服务(例如HaProxy),一般他们都依赖一些基础工具,或者基础库,例如 openssl 、openssl-devel、gcc 等等。如果能联网,直接通过 yum 命令安装相当方便。

但是往往公司的内网都是禁止访问外网的,甚至连内网 yum 源也没有,如果你打算手动离线安装这些基础的组件,你会发现,他们又依赖了上层的组件,上层一会继续依赖更上层的,令人无比窒息。


解决方案

在线的时候,我们可以通过 yum 直接安装这些基础组件,他会自动帮我们实现依赖自动安装,那我们是否可以搭建一个离线的 yum 源呢 ?

答案是可以的。

我们可以将一个完整的包含所需的基础组件的一个 ISO 操作系统文件,挂载为一个自定义 yum 源。


实现过程

  1. 下载 ISO 文件

http://bay.uchicago.edu/centos-vault/7.2.1511/isos/x86_64/

下载地址里面的 CentOS-7-x86_64-Everything-1511.iso 镜像文件

  1. 创建目录

创建目录 /usr/local/iso 用于存放 iso 镜像文件,/usr/local/iso/files 用来存放挂载的镜像文件

  1. mkdir /usr/local/iso
  2. mkdir /usr/local/iso/files
  3. cd /usr/local/iso
  1. CentOS-7-x86_64-Everything-1511.iso 上传到节点 /usr/local/iso 目录
  2. 修改 /etc/fstab 系统文件

    vi /etc/fstab

最后一行加入

  1. /usr/local/iso/CentOS-7-x86_64-Everything-1511.iso /usr/local/iso/files iso9660 defaults,loop 0 0
  1. 挂载

    mount -a

  2. 查看是否挂载成功

    mount -l

打印的内容,直接看最下面一行,显示你挂载的 ISO 路径即可
在这里插入图片描述

  1. 修改 yum 源配置

备份/etc/yum.repos.d下所有文件

  1. mkdir /etc/yum.repos.d/bak
  2. mv /etc/yum.repos.d/CentOS* //etc/yum.repos.d/bak
  1. 新建 CentOS-Media.repo

    cd /etc/yum.repos.d
    vi CentOS-Media.repo

CentOS-Media.repo 的内容:

  1. [c7-media]
  2. name=CentOS-$releasever - Media
  3. baseurl=file:///usr/local/iso/files
  4. gpgcheck=1
  5. enabled=1
  6. gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

发表评论

表情:
评论列表 (有 0 条评论,80人围观)

还没有评论,来说两句吧...

相关阅读