使用ISO镜像配置yum源


问题


在无网络连接时,需要安装常见的工具软件。如果每次都先下好然后拷贝到这台机器,则太繁琐。何况很多常见的工具看似简单,但却有许多依赖,从源码安装太麻烦而且易出错。最典型的例子就是GCC(不要问我是怎么知道的T_T)

解决方法


目前常见的Linux发行版本的ISO镜像都可以在挂载后配置为yum源。这样就能直接从ISO镜像中带的rpm包中安装到大部分常用的软件。以下以CentOS 6.5为例进行说明:

第一步:下载CentOS6.5的ISO镜像
第二步:挂载ISO镜像

# mkdir -p /cdrom/iso  
# mount -o loop ISO-FILE-PATH /cdrom/iso

第三步:配置yum源

# cd /etc/yum.repos.d
# mkdir BAK; mv *.repo BAK  // 备份现有yum源配置  
# vim ISO.repo  
  [base]
  name=CentOS-ISO1
  baseurl=file:///cdrom/iso
  enabled=1
  gpgcheck=1
  gpgkey=file:///cdrom/iso/RPM-GPG-KEY-CentOS-6

第四步:检查yum源配置

# yum list  

至此应该能看到ISO镜像中RPM包已经配置好了yum源。对于CentOS6.5来说,可以看到它有repodata文件夹,这意味着它的ISO镜像能够直接配置为yum源而不用额外的动作。
而如果ISO没有repodata文件夹或手头仅有RPM包时,则需要借助辅助工具createrepo来创建正确的yum源。
在安装好createrepo后,仅需在RPM包所在的目录执行以下命令就可以创建一个可用的yum源。

# createrepo .

参考资料


如何使用yum工具从iso镜像文件上安装