在Oracle VM virtual box 中复制 CentOS 7虚拟机更改IP地址的操作

最近玩Redis主从复制的时候,我装了一个虚拟机,但主从复制需要准备3个虚拟机,这个时候,我又不想一个一个去装,我看到Oracle VM virtual box提供了一个虚拟机复制操作,于是就用了一下这个功能,发现确实可以复制虚拟机。

CentOS 7 虚拟机复制步骤。

前提条件,你要先安装一个虚拟机。

我选的系统是centos 7。

强调:不同的虚拟机系统,他的配置文件或有差异,我这边仅围绕centOS 7进行
在这里插入图片描述

具体步骤如下

在这里插入图片描述
选择复制则会弹出一个下面窗口,名称自己定义。
在这里插入图片描述注意,这边MAC地址设定,你可以自行选择。

接下来点击下一步弹窗
在这里插入图片描述
我们选择完成复制,链接复制其实就是将启动的虚拟机链接指向我们作为复制的虚拟机对象,个人觉得还是完全复制的好。

之后就是等待复制好然后启动虚拟机了。

问题来了

我们通过复制的方式会将我们第一个虚拟机的所有东西都复制过来,包括登录系统的账号密码,还有IP地址,烦人的是,3个虚拟机的ip地址都一样了,并且可以同时启动,这个时候就有点折磨我心态了,通过复制的方式导致三个虚拟机ip地址一样,我怎么知道我连接的是那个虚拟机呢?

查看虚拟机的ip配置文件和ipv4地址

这个时候我通过ip addr 去查看相关指令,结果因为我在虚拟机中装了docker和一些其他的玩意,导致我ip地址查看定位不到具体的ip。

Oracle VM virtual box的进入虚拟机之后,我们一旦鼠标移动点击到虚拟机内部,发现鼠标就局限在虚拟机窗口内部了,这个时候,我们想要移除鼠标到我们的Windows桌面的时候,是需要按一下键盘右边的ctrl键位。然后你就可以退出了。

# 查看虚拟机ip
ip addr 

在这里插入图片描述

这个时候吧,我们发现我无法精准地位我们的ip是哪个的时候,我们可以通过如下指令

# 进入我们centos虚拟机的网络管理文件夹
cd /etc/sysconfig/network-scripts/# 查看我们这个文件夹下的存在的文件
ls

在这里插入图片描述
强调一点 : 在centOS我们关于IP地址的配置基本上都是ifcfg开头。我们查到ifcfg的文件有两个,.bak的是Linux系统给的自动的备份文件,咱们不管他,然后我们通过相关指令查看一下我们的ip地址。

上面我们查询到许多的ip地址,我们无法定位到具体的ip地址不是嘛。现在我们在玩一下,不过我们的指令有相关变化。

ip addr show eth0 

注意: 这里我们在看ip配置文件的时候,只需要填写ifcfg-的后缀名字就可。

在这里插入图片描述
我们看到了一个10.0.2.15的ip地址,那么我们来拿到这个ip地址试试,看我们的Windows的cmd窗口ping不ping的通他?
在这里插入图片描述
看结果:
在这里插入图片描述
你会发现ping不通,这是为什么呢?

答:这个ip地址是虚拟机内网的ip地址,我们Windows一般ping的是虚拟机的外网地址,这个内网地址是ping不通的。

接下来看,我们还有一个eth1文件,那我们试试这个eth1吧!

ip addr show eth1

在这里插入图片描述
我们看一下,这里有个192.168.56.11,那这个地址是不是我们可以ping得通的外网地址呢?
让我们试一下:
在这里插入图片描述
我们发现,可以ping通,那么这个ifcfg就是我们的Linux虚拟机配置外网ip地址的文件了,接下来我们查看一下这个配置文件里边到底有什么东西。让我们具体分析一下:

# 查看配置文件的内容
cat /etc/sysconfig/network-scripts/ifcfg-eth1

我们重点关注这四个参数:

  • BOOTPROTO:设置为static,表示使用静态IP地址。
  • IPADDR:设置为新的IP地址。
  • NETMASK:设置为子网掩码。
  • GATEWAY:设置为网关地址。
    在这里插入图片描述
    这里边,我们一般更改IPADDR,由他绑的ip地址,我这边设置为192.168.56.12。

设置虚拟机IP地址

我通过cat 文件路基查看到文件内部的相关属性了,现在我们通过Linux自带的编辑指令进行操作。

首先我们先进入到我们的目标路径,当然你也可以直接进行编辑,就是需要把文件路径写全就可:

cat /etc/sysconfig/network-scripts/ls或者
vi /etc/sysconfig/network-scripts/ifcfg-eth1

如图:

在这里插入图片描述
要进行编辑操作了

在编辑操作之前,请先将自己用户切换为root用户或者其他管理员用户,不然你会面临没有编辑保存权限的操作!!!

vi ifcfg-eth1

在这里插入图片描述
当你看到这个页面的时候代表你已经成功了一半了,但是请注意,加下来我讲的才是正式编辑,你不用心看,如果是初学者的话,你发现你到这个页面之后你没法退出,也没法编辑。

完整页面
在这里插入图片描述
到底这个页面之后,我们进行编辑功能,这个时候我们需要按键盘的i键位。

在这里插入图片描述
对吧上述图片,我们发现这里边变成了insert,这是Linux告诉我们,你可以进行编辑了。

在这里插入图片描述
然后移动你的键盘上的方向键,键盘的方向键懂吧,向左,向右(→),向上,向下的箭头,我们移动到有图中有下标的位置,将11改成12。

接下来我们该怎么退出呢?
退出vi编辑操作的步骤:

  1. 按压键盘上的ESC键。
    在这里插入图片描述
    光标位置不管他,我们发现insert不见了,这个时候,我们继续执行退出操作。

  2. 直接按压键盘上的:键,然后输入wq
    在这里插入图片描述

  3. 最后一步按下回车键Enter
    在这里插入图片描述
    我们发现就退出成功了。

这个时候,我们可以重启一下网络,或者重启虚拟机。

systemctl restart network

验证一下我们新的ip地址是否生效,可以使用如下指令:

ip addr show eth1

不知道你们如何,反正我是没生效。不过没事,我们还有另外一种方式,那就是重启。

reboot

一般我们都需要配置3个虚拟机,这里我们复制了一个虚拟机,另一个虚拟机也按照上述步骤进行,然后我们利用虚拟机与虚拟机直接ping对应的ip看看,然后利用Windows来ping一下对应的虚拟机ip地址看通不通。

在这里插入图片描述
上图,两个虚拟机之间ping得通。说明我们的ip配置生效了。
我们再来看Windows来ping我们的虚拟机ip,如下图所示,也没问题。
在这里插入图片描述
至此,我们在Oracle VM virtual box中配置虚拟机的ip地址就实现了。无论你想复制多少个虚拟机,你都可以按照上述步骤进行,唯一的区别就是不同的系统,他的配置文件不同,你要根据对应的配置文件进行尝试。

总结

这个难度并不大,但是关键是现在网络上知识太零散了,需要自己一步一步的去尝试,去踩坑,踩了坑解决不了就重装,能解决就尽量去解决,解决不了就自己重装。博文写作不易,如果对你有帮助麻烦点个关注和小心心,非常感谢。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/22682.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python3 元组、列表、字典、集合小结

前言 本文主要对Python中的元组、列表、字典、集合进行小结,主要内容包括知识点回顾、异同点、使用场景。 文章目录 前言一、知识点回顾1、列表(List)2、 元组(Tuple)3、 字典(Dictionary)4.、…

OrangePi AIPro开发板评测(sata、yolov8、OLED)

OrangePi AIpro开发板评测,资源丰富,比以前的版本有较大的提升,与树莓派相媲美,评测感觉良好! 开发板的开发文档非常好,可放心食用!!简直保姆级!

云原生时代:从 Jenkins 到 Argo Workflows,构建高效 CI Pipeline

作者:蔡靖 Argo Workflows Argo Workflows [ 1] 是用于在 Kubernetes 上编排 Job 的开源的云原生工作流引擎。可以轻松自动化和管理 Kubernetes 上的复杂工作流程。适用于各种场景,包括定时任务、机器学习、ETL 和数据分析、模型训练、数据流 pipline、…

【成品设计】基于STC15F104W的互补PWM输出器

《基于STC15F104W的互补PWM输出器》 1.所需器件: (1)单片机:STC15F104W。 ①最小系统板链接:【淘宝】https://m.tb.cn/h.5WnLl9X?tkqSGrdCWm0PW「STC15F104W STC15W204S单片机模块 系统板 核心板 学习板 开发板」点击链接直接打开 或者 淘宝…

【实用技巧】Unity的Text组件实用技巧

Unity的Text组件是UI系统中非常强大的工具,可以帮助开发者创建各种交互式文本元素。以下是一些实用的技巧,可以帮助你更好地使用Text组件: 1. **动态更新文本**: - 你可以在运行时动态地更新Text组件的文本,这在显…

HCIP-Datacom-ARST自选题库__多种协议简答【11道题】

1.BGP/MPLSIP VPN的典型组网场景如图所示,PE1和PE2通过LoopbackO建立MP-IBGP,PE1和PE2之间只传递VPN路由,其中PE1BGP进程的部分配置已在图中标出,则编号为0的命令不是必须的。(填写阿拉伯数字) 3 2.在如图所示的Hub&Spok…

【Java】数据加密

目录 数据加密介绍使用场景密码学历史古代密码学凯撒密码例子特点 维吉尼亚密码原理例子特点 现代密码学介绍 现代密码学的加密算法分类哈希算法优点缺点代码示例【封装写法】 对称加密算法对称加密算法的加密过程解密过程对称加密算法的优点:对称加密算法的缺点&am…

【初识Objective-C】

Objective-C学习 什么是OCOC的特性OC跑的第一个程序helloworld OC的一些基础知识标识符OC关键字数据类型字符型c字符串为什么NSString类型定义时前面要加和普通的c对象有什么区别 一些基础知识if语句switch语句三种循坏语句for循环:用于固定次数的循环while循环&…

低功耗,低噪声 CMOS 轨到轨输入输出运算放大器

产品简述 MS6001/2/4 运算放大器具有极低功耗,轨到轨输入输出,低 的输入电压和低的电流噪声。具体表现在可工作在幅度为 1.8V 到 5V 的单电源或者双电源条件,低功耗和低噪声使得 MS6001/2/4 能够用在可移动设备上,输入输…

Go 实现的小型web server,可以通过调用api来控制和消耗 CPU 占比。通常用于测试系统负载和性能。

说明 Go 实现的小型web server,可以通过调用api来控制和消耗 CPU 占比。通常用于测试系统负载和性能。 代码在下面 编译和运行 在终端中编译代码: go build 运行程序,然后调用api,例如: ./tools_cpu_burner_by_api再打开另一个s…

低代码/无代码可以降低程序员哪些门槛

低代码/无代码开发平台是一种新兴的软件开发模式,它通过图形化界面、拖拽式操作等方式,快速构建应用程序,从而降低了开发者的准入门槛。这种模式对程序员来说,不仅可以提高开发效率,还可以在某些情况下促进业务人员成为…

目标检测数据集 - 打架检测数据集下载「包含VOC、COCO、YOLO三种格式」

数据集介绍:打架检测数据集,真实监控场景高质量打架图片数据,涉及场景丰富,比如街道场景打架数据、酒吧场景打架数据、商店场景打架数据、公交车场景打架数据、监狱场景打架数据、空旷地打架数据、两人打架数据、多人群殴数据等。…

面试官:如何实现大文件切片上传?

公众号:程序员白特,关注我,每天进步一点点~ 前端上传文件很大时,会出现各种问题,比如连接超时了,网断了,都会导致上传失败,这个时候就需要将文件切片上传,下面我们就来学习一下如何使用vue实现大文件切片上传吧 大文件为什么要切片上传 前端…

Python filter()用法:深入解析与实战应用

Python filter()用法:深入解析与实战应用 在Python编程中,filter() 函数是一个内置的高阶函数,它用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。该函数在数据处理和筛选时非常有用&#xff0…

计算机系统基础知识-经典题目

【第1题】 对计算机评价的主要性能指标有时钟频率、 (1) 、运算精度和内存容量等。对数据库管理系统评价的主要性能指标有 (2) 、数据库所允许的索引数量和最大并发事务处理能力等。 (1) A.丢包率 B.端口吞吐量 C.可移植性 D.数据处理速率 (2) A.MIPS B.支持协议和标准 C.最大…

【设计模式】工厂模式(创建型)⭐⭐⭐

文章目录 1.概念1.1 什么是工厂模式1.2 优点与缺点 2.实现方式2.1 简单工厂模式(Simple Factory)2.2 简单工厂模式缺点2.3 抽象工厂模式(Abstract Factory Pattern) 3. Java 哪些地方用到了工厂模式4. Spring 哪些地方用到了工厂模…

【SpringBoot】SpringBoot同时可以处理多少请求

目录 问题Web三大容器三者区别TomcatJetty小结 最大连接数和最大等待数同时处理请求数拓展:设置Web容器设置容器为Jetty设置容器为Undertow 问题 之前看到过一个面试题:SpringBoot同时可以处理多少请求? 准确的来说,Spring Boot…

mysql聚簇索引

1.聚簇索引是物理索引,数据在表里是按顺序存储的,物理上是连续的,一般选主键id作为聚簇索引,且一张表里只能有一个聚簇索引。 2.只有InnoDB支持聚簇索引。 3.非聚簇索引是逻辑索引,将数据的某个字段抽取出来组成独立的…

JVM常用概念之锁粗化和循环

1.什么是锁粗化 锁粗化一般指有效地合并几个相邻的锁定块,从而减少锁定开销。如下述代码所示: 锁粗化前代码: synchronized (obj) {// statements 1 } synchronized (obj) {// statements 2 }锁粗化后代码: synchronized (obj)…

pycharm绘图时中英文不能同时出现 中文出现小框框的问题解决

# 设置字体为微软雅黑,正确显示负号 plt.rcParams[font.sans-serif] [Microsoft YaHei] plt.rcParams[axes.unicode_minus] False