Linux挂载iso镜像文件为yum源

场景

工作中,经常需要在公司的内网环境节点安装一些第三方的服务(例如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 用来存放挂载的镜像文件

mkdir /usr/local/iso
mkdir /usr/local/iso/files
cd /usr/local/iso
  1. CentOS-7-x86_64-Everything-1511.iso 上传到节点 /usr/local/iso 目录

  2. 修改 /etc/fstab 系统文件

vi /etc/fstab

最后一行加入

/usr/local/iso/CentOS-7-x86_64-Everything-1511.iso /usr/local/iso/files iso9660 defaults,loop 0 0
  1. 挂载
mount -a
  1. 查看是否挂载成功
mount -l

打印的内容,直接看最下面一行,显示你挂载的 ISO 路径即可
Linux挂载iso镜像文件为yum源_第1张图片
7. 修改 yum 源配置

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

mkdir /etc/yum.repos.d/bak
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 的内容:

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

你可能感兴趣的:(linux,linux,运维,服务器)