有时候我们在Linux上搭建一些程序运行环境或者在本地安装一些软件的时候,难免会遇到需要使用yum安装一些依赖库的情况,但是由于没有网络,我们无法下载依赖库软件。或者在机房连不上外网的情况下,需要安装很多依赖的基础软件。如何解决这个问题呢?下面我将介绍两种针对这种情况构建私有yum源的解决方案。微信搜索公众号:“菜鸟风神记”,定期分享一线厂商常用的干货。一、基于文件协议构建本地yum源:1、准备工作:(1)CentOS镜像,我这里使用CentOS-6.9-x86_64-bin-DVD1.iso,可以从网上下载(2)已经安装好一个虚拟机,这里我使用的是Vmware虚拟机工具,这里省略虚拟机安装步骤2、打开本地虚拟机实例3、选择打开的虚拟机实例,右键->设置,如下图:4.选择下载到本地的ISO镜像文件,如下图:5.勾选connected和connectatstartup选项,如下图:6.使用远程连接工具SecureCRT或XShell远程连接Linux实例,首先创建挂载ISO镜像目录,然后将ISO镜像挂载到创建的挂载目录下。通过Linux光驱/dev/cdrom完成挂载过程。运行过程如下:[root@WB-BLOG~]#mkdir-pv/media/cdrom/[root@WB-BLOG~]#mount/dev/cdrom/media/cdrom/挂载完成,可以使用“df-h”命令查看:7.进入yum源的配置文件目录,/etc/yum.repos.d/,先备份原来的yum源配置文件[root@WB-BLOG~]#cd/etc/yum.repos.d/[root@WB-BLOGyum.repos.d]#ls[root@WB-BLOGyum.repos.d]#mkdir-pvbackup[root@WB-BLOGyum.repos.d]#mv./*.repo./backup/8.编辑自定义yum源配置文件server.repo:[root@WB-BLOGyum.repos.d]#vimserver.repo写入如下内容:[LocalRepo]name=LocalRepobaseurl=file:///media/cdrom/enabled=1gpgcheck=0参数含义:[LocalRepo]:表示一个yum源配置段的名称,可以随意命名name:表示yum源的名称baseurl:表示yum源的目录,使用file:///表示指向本地文件系统上的目录,注意:有三个斜杠。enabled:表示yum配置段是否有效,1表示有效,0表示无效gpgcheck:表示是否对yum源指定的软件包进行安全校验,0表示不校验,本地挂载的镜像可以认为是软件安全,无需验证;9、保存退出,然后执行“yumcleanall”命令清除原来的yum源缓存:[root@WB-BLOGyum.repos.d]#yumcleanall10,然后执行“yumlistall”检查是否本地yum源有效。如果可以输出常用软件包,说明本地yum源配置成功,如下:[root@WB-BLOGyum.repos.d]#yumlistall11。至此,基于本地文件协议的yum源配置完成,可以使用“yuminstall[软件名称]”命令安装常用软件,如:“yuminstallgccgcc-c++”。如果安装了软件,可以使用“umount/media/cdrom/”卸载挂载的目录。二、基于http构建远程私有yum:1、准备工作:(1)CentOS镜像,我这里使用的是CentOS-6.9-x86_64-bin-DVD1.iso,可以从网上下载(2)已经安装好一个虚拟机机,这里我使用的是Vmware虚拟机工具,这里省略虚拟机安装步骤(3)确保服务器上安装了http服务器,可以是任何可以提供http的web服务器,这里使用httpd2.上传ISO镜像文件到需要做yum源的虚拟机。这里假设虚拟机的主机名为WB-BLOG,ip为:192.168.0.10。使用SecureCRT或者XShell远程连接工具连接到WB-BLOG主机,然后使用sz命令或者使用图形界面工具FlashFXP上传到WB-BLOG主机的/home/software目录下[root@WB-BLOG~]#rz3,创建挂载目录,为了方便,这里直接使用httpd默认目录,/var/www/html/4。将上传的ISO镜像文件挂载到/var/www/html目录下,如下:iso/var/www/html参数含义:-oloop:指定设备的挂载方式,loop表示挂载一个文件作为硬盘分区到系统-tiso9660:指定文件系统的类型,类型ISO文件对应iso9660,其他文件类型可以自己查资料5、进入yum源的配置文件目录,备份原来的yum源配置文件,然后编辑server.repo配置文件,添加以下内容:[root@WB-BLOG~]#cd/etc/yum.repos.d/[root@WB-BLOGyum.repos.d]#mkdir-pvbackup&&mv./*.repo./backup[root@WB-BLOGyum.repos.d]#vimserver.repo添加如下内容:[HttpRepo]name=HttpRepobaseurl=http://192.168.0.10enabled=1gpgcheck=0reference数字含义:name:表示yum源的名称baseurl:表示yum源的软件目录,“http://”表示yum源是远程http协议的yum源,当然也可以是ftpprotocolorotherenabled:表示yum配置段是否有效,1表示有效,0表示无效gpgcheck:表示是否对yum源指定的软件包进行安全检查,0表示不检查,镜像本地挂载可以认为该软件是安全的,所以不需要验证;6、启动httpd服务,然后执行“yumcleanall”命令清除之前的缓存,如下图:[root@WB-BLOGyum.repos.d]#servicehttpdrestart[root@WB-BLOGyum.repos.d]#yumcleanall[root@WB-BLOGyum.repos.d]#yumlistall7.至此,基于http协议的私有yum源已经搭建完成。这种方式比较灵活High,可以被同一网段的其他主机使用。以后更多文章会在个人网站更新,欢迎查看。另外还提??供了一些优秀的IT视频资料,可以免费下载!如有需要,请查看https://www.592xuexi.com
