在VMware下快速克隆多个Linux环境的方法教程
为什么要克隆多个 Linux 系统?
因为要玩阿。其实也不是了,就是为了折腾嘛,玩个数据库主从啦、缓存集群啦、分布式消息集群啦、分布式各类服务啦,你要模拟几乎接近真实的环境,就必须要有多台机器,你想要有多台机器只有两种方式:买买买和装虚拟机。
你现在要模拟三台机器下实现分布式服务,你要怎么装环境?
当你在 VMware 里装好了一个 Linux 系统后,当然你可以选择再装下一个和下下一个,这没啥问题!不过,你就需要在每台机器上安装各种软件,如:JDK、Tomcat、Nginx啦。我这有一个极其方便的方式,就是用克隆快速搞定多台一模一样环境的机器。
说干就干,别废话
当然,首先你要有安装好的 VMware 和一个 Linux 系统,其他虚拟机和系统也可以,我这使用的是:
- VMware Workstation 12 Pro
- Red Hat Enterprise Linux 7 64 位
1.克隆你要克隆的环境
其实就是打开 VMare 后,关闭或挂起你要克隆的机器,然后右键选择【管理】-【克隆】:
剩下的都是 Next 、 Next 了,不过到这个选择【克隆方法】的时候应该注意一下,最好选择下面的【创建完整克隆】,因为这样不会依赖你原来的环境:
接下来的名字、位置什么的自己填咯。完成就行了。
2.简单配置你克隆后的环境
由于你用了克隆,所有克隆出来的环境和原来的一模一样,包括主机名、IP地址、MAC地址阿什么的,所以要解决的就几个小问题而已。
在你克隆好的机器上,右键选择【设置】-【网络适配器】-【高级】,随便点几下【生成】按钮,记录一下 MAC 地址,如下图:
接着就是开机启动了。
编辑 ifcfg-eno16777736 文件,Linux 7 下这个文件中存放着网卡和 IP信息,命令:
vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
把其中的 IPADDR 和 HWADDR 修改为你要的 IP 和刚才生成的 MAC ,如下图:
然后重启网卡。命令:service network restart
。
当然,我这里是在克隆前设置了静态 IP,如果你自动获取的应该不会存在 IP 冲突情况。如果你有修改 Hostname ,这里也要相应修改一下。
总结一下
VMware 下一个很简单的小特性,很大的提高了我们玩虚拟机的兴趣,不过很多人并没发现,我就写出来吧,希望对你有用。
好了,以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
- 基于典型相关分析的词向量
- 分享一波关于做 Kaggle 比赛,Jdata,天池的经验,看完我这篇就够了。
- system表空间不足的问题分析(r6笔记第66天)
- 挑战数据结构和算法面试题——最大间隔
- 一则orabbix报警的分析(r6笔记第65天)
- 中科院计算所开源深度文本匹配开源工具 MatchZoo
- 简单易学的机器学习算法——线性回归(1)
- 当主键碰到NULL(r6笔记第64天)
- 记一次dg故障的处理总结(r6笔记第63天)
- Java企业面试——Javaweb
- Linux下/var/spool/clientmqueue空间不足的解决(r6笔记第81天)
- Pytorch 0.3发布:实现多方面提速,增加对ONNX支持 | 快讯
- 基于DB time的调优分析 (r6笔记第79天)
- 通过shell脚本抓取awr报告中的问题sql(r6笔记第78天)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- SQL工具集-查询会话等待
- 哈工大李志军操作系统实验1
- 有赞推荐系统关键技术
- 8086汇编格式
- React 中 getDerivedStateFromProps 的三个场景
- Java7的try-with-resources声明(转)
- 聊聊java中的哪些Map:(三)HashMap中的Iterator和Spliterator
- 聊聊java中的哪些Map:(四)LinkedHashMap源码分析
- CGroup 介绍
- 有赞持续集成容器化实践
- 怎么创建一个良好的Git提交信息
- Epoll 如何工作的?
- 用函数式的方式思考——递归
- Linux等待队列原理与实现
- 微信小程序switchTab带参解决方法