如何制作本地yum源

为什么要制作本地yum源?

在生产机器上,客户提供机器预先装好的linux操作系统,但是内网环境外网环境物理隔离的。

如果在搭建的生产环境上,需要安装相关软件时,从外网下载,再拷贝到生产机器上是非常不方便的;而且安装软件存在相互依赖不一定能安装成功

yum安装会自动加载相关的依赖包,既然不能连接外网,就需要制作本地yum源

 

如何制作本地yum源?

(1)准备包,这里使用的是镜像包CentOS-7-x86_64-DVD-2003.iso

(2)将镜像包加载到虚拟机下的centos操作系统

第一步、启动虚拟机

第二步、在存储中加入iso文件

 

第三步、将iso文件加载到centos系统目录下

1)创建目录

mkdir mnt/cdrom

2)将光盘dev/cdrom挂在到mnt/cdrom下

mount dev/cdrom mnt/cdrom

3)验证挂载是否成功 

cd mnt/cdrom

ls -s

 

 此时,ios已经挂载到 mnt/cdrom下,CentOS-7-x86_64-DVD-2003.iso所有的文件夹都可见,Packages里面包含CentOS7所有的安装包,安装软件可以从这个目录中获取。

(3)修改yum源配置文件

第一步、备份原有的YUM源配置文件,将/etc/yum.repos.d/目录下的所有文件全部bak一下

rename .repo .repo.bak  *

第二步、新增CentOS-Local.repo,将源指向自己

[base]

name=CentOS-Local ##仓库描述

baseurl=file:///mnt/cdrom##镜像挂载位置

gpgcheck=1 ##是否启用1为检查0为不检查
enabled=1  ##是否启用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7##签名密钥

其中gpgkey需要到/etc/pki/rpm-gpg/目录下查看,以实际的为准

(4)清空yum缓存,并测试配置是否正确

清除缓存:

yum clean all

测试配置是否正确:

yum list

参考网址(非常感谢大佬分享):

https://www.cnblogs.com/cac2020/p/9785999.html

https://www.cnblogs.com/daleyzou/p/Linux.html

https://blog.csdn.net/iteye_5722/article/details/82675440?utm_medium=distribute.pc_relevant.none-task-blog-searchFromBaidu-8.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-searchFromBaidu-8.control

 

扩展:

如果需要安装的软件,在CentOS-7-x86_64-DVD-2003.iso没有,怎么制作yum源?

在可以连外网的客户机先下载软件和相关依赖,到客户机目录,然后拷贝目录下的文件或者发送目录到不能连接外网的客户机,用上面同样的方式,制作本地yum源即可。

eg.安装nginx

[root@compute1 tmp]# mkdir -pv /tmp/soft
cd /tmp/soft
[root@compute1 soft]# ll /tmp/soft
total 0
[root@compute1 soft]# yum install nginx --downloadonly --downloaddir=/tmp/soft
[root@compute1 soft]# ll /tmp/soft
total 0
-rw-r--r-- 1 root root 0 Jul 13 14:13 fontconfig-2.10.95-10.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 fontpackages-filesystem-1.44-8.el7.noarch.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 gd-2.0.35-26.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 GeoIP-1.5.0-11.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 libXpm-3.5.11-3.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-1.10.2-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-all-modules-1.10.2-1.el7.noarch.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-filesystem-1.10.2-1.el7.noarch.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-mod-http-geoip-1.10.2-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-mod-http-image-filter-1.10.2-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-mod-http-perl-1.10.2-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-mod-http-xslt-filter-1.10.2-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-mod-mail-1.10.2-1.el7.x86_64.rpm
-rw-r--r-- 1 root root 0 Jul 13 14:13 nginx-mod-stream-1.10.2-1.el7.x86_64.rpm
yum install nginx --downloadonly --downloaddir=/tmp/soft # 表示只下载,不安装
提示不能使用--downloadonly的请先安装yum-utils软件
[root@compute1 soft]# yum -y install yum-utils

 参考网址(非常感谢大佬分享):https://www.cnblogs.com/marility/p/7278374.html

 

 

posted @ 2021-01-06 14:22  小西瓜糖  阅读(2213)  评论(0编辑  收藏  举报