[TOC]
## 一、背景介绍
> 大多数的工作场景中,部署阶段,客户一般会提供能够访问外网的服务器环境。但是,也不排除某些场景下,客户无法或不能提供必要外网连接的服务器环境。
在这样的情况下,我们可以使用离线yum源,来完成基础环境的安装。
首先先查看服务器Centos的版本:
```
cat /etc/issue
```
## 二、安装步骤
### 1.下载包含yum源的镜像文件
案例中我们使用centos7.4对应版本的安装文件。进入下载初始页,选择对应版本7.4.1708
http://vault.centos.org/
选择Europe的第一个
http://vault.centos.org/notonvault.html
选择对应版本,在此选择下载7.4
http://mirror.nsc.liu.se/centos-store/7.4.1708/isos/x86_64/
下载依据需求而定,最好下载everyting版本,但是因为太大,本文下载CentOS-7-x86_64-DVD-1708.iso版本。
### 2.上传到服务器
```
/opt/softwares/CentOS-7-x86_64-DVD-1708.iso
```
### 3.挂着镜像到服务器
```
mount /opt/softwares/CentOS-7-x86_64-DVD-1708.iso /mnt/cdrom/
```
### 4.将挂在盘内容复制到本地目录
```
mkdir /media/CentOS/
cp -fr /mnt/cdrom/* /media/CentOS/
```
### 5.将Yum源仓库repo备份
```
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/* /etc/yum.repos.d/bak
```
备注:一定移除或者重命名/etc/yum.repos.d/CentOS-Base.repo这个文件,因为默认会首先读取这个访问外网源的文件
### 6.复制CentOS-Media.repo并且编辑
```
cp /etc/yum.repos.d/bak/CentOS-Media.repo /etc/yum.repos.d/
vi /etc/yum.repos.d/CentOS-Media.repo
```
修改为:
```
# CentOS-Media.repo
#
# This repo can be used with mounted DVD media, verify the mount point for
# CentOS-7. You can use this repo and yum to install items directly off the
# DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
# yum --enablerepo=c7-media [command]
#
# or for ONLY the media repo, do this:
#
# yum --disablerepo=\* --enablerepo=c7-media [command]
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///media/CentOS/ #(1)-->这一行改成前边我们新建的CentOS目录
# file:///media/cdrom/ #(2)-->这一行加#号注释掉
# file:///media/cdrecorder/ #(3)-->这一行加#号注释掉
gpgcheck=1
enabled=1 #(4)-->这一行把0改成1来启用源
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
```
### 7.卸载镜像
```
umount /mnt/cdrom/
```
### 8.检测
```
yum list
```
结果:
```
systemtap-server.x86_64 3.1-3.el7 c7-media
t1lib.x86_64 5.1.2-14.el7 c7-media
taglib.x86_64 1.8-7.20130218git.el7 c7-media
tagsoup.noarch 1.2.1-8.el7 c7-media
talk.x86_64 0.17-46.el7 c7-media
talk-server.x86_64 0.17-46.el7 c7-media
targetcli.noarch 2.1.fb46-1.el7 c7-media
targetd.noarch 0.8.6-1.el7 c7-media
tbb.x86_64 4.1-9.20130314.el7 c7-media
tbb-devel.x86_64 4.1-9.20130314.el7 c7-media
tboot.x86_64 1:1.9.5-1.el7 c7-media
tcl.x86_64 1:8.5.13-8.el7 c7-media
tcl-devel.x86_64 1:8.5.13-8.el7 c7-media
tcl-pgtcl.x86_64 2.0.0-5.el7 c7-media
tcp_wrappers.x86_64 7.6-77.el7 c7-media
tcp_wrappers-devel.x86_64 7.6-77.el7 c7-media
tcpdump.x86_64 14:4.9.0-5.el7 c7-media
tcsh.x86_64 6.18.01-15.el7 c7-media
tdb-tools.x86_64 1.3.12-2.el7 c7-media
telepathy-farstream.x86_64 0.6.0-5.el7 c7-media
telepathy-filesystem.noarch 0.0.2-6.el7 c7-media
```
到此为之,我们就可以在系统中使用yum安装我们自己想要的包了。but,如果你有N台服务器需要部署,难道我们要把一个几个G的文件传来传去?我们可以基于本地yum源构建一个共享yum源,这样就可以构造一个私有的yum源,以方便在其他服务器中进行部署了。
## 三、共享yum源
### 1.在本地yum源配置完成之后安装apache
```
yum install httpd
systemctl start httpd
systemctl enable httpd
systemctl stop firewalld
systemctl disable firewalld
```
### 2.创建挂载文件目录
```
mkdir /var/www/html/source7.4
```
### 3.挂载镜像
```
mount /opt/softwares/CentOS-7-x86_64-DVD-1708.iso /var/www/html/source7.4/
```
### 4.开机自动挂载
(1)编辑rc.local写入
```
vim /etc/rc.d/rc.local
mount /opt/softwares/CentOS-7-x86_64-DVD-1708.iso /var/www/html/source7.4/
```
(2)修改权限
```
chmod +x /etc/rc.d/rc.local
```
### 5.访问
```
http://IP/source7.4/
```
结果:
![](https://img-blog.csdnimg.cn/20190319123925213.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTA4ODYyMTc=,size_16,color_FFFFFF,t_70)
> 参考资料:https://blog.csdn.net/u010886217/article/details/88647591
- ✍写在前面
- 部署管理思想
- 更新说明
- ⛳第一章 基础环境部署
- 1-1 linux防火墙管理
- 1-2 服务器初始化
- 1-3 存储管理
- 文件删除空间释放问题
- 定时清理日志
- 1-4 JDK安装
- 1-5 无外网环境部署
- 1-6 切换阿里云yum源
- 1-7 使用ssh隧道解决网络问题
- 1-8 使用Axure+svn+httpd搭建自己的在线画图工具
- linux svn环境搭建
- 1-9 编译环境安装
- 🚀第二章 快速部署篇
- 2-1 一个命令快速安装mysql
- mysql windows版本安装
- mysql源码版的一键部署
- mysql配置
- 自动化失败
- mysql异常处理
- Oracle表结构转mysql表结构
- 修改字段注释没那么简单!
- 2-2 基于linux脚本的基础环境发布
- 2-3 docker
- 2-4 nodejs部署
- 2-5 基于Alibaba Cloud Toolkit的Springboot发布脚本
- 2-6 elasticsearch部署
- es6.x部署
- es7.x部署
- ik分词器部署
- 内存调优
- 回收空间
- 2-7 Oracle生产安装
- 💥第三章 系统APM
- 3-1 Zabbix安装
- 修改默认端口
- 踩坑记录
- 3-2 Grafana部署
- 3-3 Kibana部署
- 🔨第四章 中间件部署
- 4-1 nginx
- nginx安装部署
- nginx动静分离配置,这个雷你踩过吗?
- 图解nginx304缓存策略
- nginx日志切割
- 4-2 activemq升级
- 4-3 redis安装
- 4-4 Canal部署
- 报错解决
- Canal+Rabbitmq实现同步
- canal数据同步到es
- 4-5 SpringCloud Alibaba
- nacos
- 新建项目
- seata
- 4-6 rabbitmq安装
- 第五章 高可用架构
- 5-1 mysql主从复制
- 主从复制配置
- 5-2 mysql数据自动备份
- 🌊第六章 数据ETL
- 6-1 dataX
- 第七章 持续集成
- 7-1 基于Docker+Jekins+Git实现企业持续集成、部署
- 7-2 安装jekins
- 安装maven
- 7-3 jvm-sandbox自动化测试
- jvm-sandbox-repeater Windows开发环境安装
- 第八章 JVM调优
- jps:查询正在运行的虚拟机进程
- jstat:查看JVM统计信息
- jinfo:实时查看和修改JVM配置参数
- 第七章 域名申请与管理
- SSL证书申请
- 第九章 业务插件部署
- 6-1 ffmpeg
- 第十章 云服务器
- 腾讯云
- 阿里云
- 其他
- 其他作品
- 简历内推
- 联系我内推