目录

一、拷贝虚拟机

二、解决ip冲突

2.1 方式一(失败)

2.2 方式二(半成功)

1、修改IP地址、删除UUID和HWADDR两行 

 2、重启网络

3、修改主机名

 4、修改虚拟机IP地址与主机名的映射

2.3 方式三(成功)

1.生成mac

2.生成UUID

3.修改ip等

4.修改主机

5. 重启网络

6.测试

2.4 直接修改网卡


一、拷贝虚拟机

右键点击虚拟机——管理——克隆——下一页——下一页——创建完整克隆——克隆向导填写虚拟机名称和安装目录——完成

等待一会就好了。

说明:

通过创建完整克隆的方式,等于说是完全拷贝了一份原来的虚拟机,创建之后就和原来的虚拟机没什么关系了。

这种方式创建的虚拟机,里面的东西和原虚拟机完全一样,包括虚拟机的用户及其密码。

不过,这种方式创建的虚拟机的ip和原虚拟机也是一样的,这就违背了我们的初衷。

 

 

 

 

 

二、解决ip冲突

2.1 方式一(失败)

我们参考这篇文章:克隆虚拟机后的IP、路由配置以及mac地址冲突解决

首先说明,这种方式在我这里失败了,在下面的第五步,添加路由的时候失败了。

# 1.查看ip
ifconfig

# 2.删除旧ip
ip addr del 192.168.247.128/24 dev ens160

# 3.添加新ip(我是在原ip基础上加1)
ip addr del 192.168.247.128/24 dev ens160

# 4.再次查看ip
ifconfig

# 5.添加路由
route add –net IP netmask MASK gw IP

 

 

 看上面最后一张图,添加路由的时候失败了。

到这里我就停下来了,没时间搞就放下了。过了一天接着回来,查看这台虚拟机的ip,竟然恢复了原状。

 那今天我们换一种方式。

2.2 方式二(半成功)

我们参考这篇文章:VMware下克隆centos7后的IP相同问题

需要说明的是,我的虚拟机是基于centos8的,所以导致有一些命令是不通的,下文遇到时我们会说到。

1、修改IP地址、删除UUID和HWADDR两行 

# 进入该目录
cd /etc/sysconfig/network-scripts

# 查看该目录下的网卡配置文件
ll

# 编辑第二步查看到的网卡文件
vim ifcfg-ens160

可以看到我们的这个网卡文件名称为:ifcfg-ens160,其中ens160是我的网卡名。该文件中并没有IPADDR和HWADDR这两行,我们添加IPADDR,同时删除UUID即可。

 2、重启网络

重启网络,该步骤一定不可以忘记!

service network restart

但是该命令在centos8上是不支持的,我更换一个

systemctl restart network

# 或者

systemctl restart network.service

还是不行。

原因我们参考这篇文章,然后继续下面的操作。

centos8之网卡配置修改及管理

centos8的网卡服务与centos7有所不同,无法通过systemctl或者service命令重启网卡。centos8网卡服务由nmcli进行管理。

我们更换命令:

# 重载网卡配置
nmcli c reload ens160

# 重启网卡
nmcli c up ens160

 

 但是我们现在查看ip还是128,没有修改。

# 添加一个IP(IPADDR)
nmcli connection modify ens160 ipv4.addresses 192.168.247.129

再重载与重启网卡,再查看还是不行。

那我们先跳过这一步,按照之前的文章继续。

3、修改主机名

方法一

# master为新主机名
hostnamectl set-hostname master

方法二

vi /etc/hostname

将原来的主机名修改成新的主机名。

此时我们查看我们的主机名(我修改成了dake01)。

 4、修改虚拟机IP地址与主机名的映射

# 获取主机名
hostname

# 获取ip
ip addr

# 查看映射关系
cat /etc/hosts

#修改映射关系
vim /etc/hosts

由于之前我们添加了一个129的ip,现在我们要删除128的,因为128的是和上一个虚拟机ip冲突了。

ip addr del 192.168.247.128 ens160

既然删除不行,那我们清空该网卡下的所有ip

ip addr flush dev ens160

 

 再添加一个ip

ip addr add 192.168.247.129/24 dev ens160

至此,貌似我们已经修改成功了。

但是如果我们执行重载网卡和重启网络的命令又恢复了。

 我们重新执行上面的清空ens160的ip并重新添加ip的命令,又好了。此时,我们通过ssh工具连接这个虚拟机是OK的。

接下来,我们重启一下虚拟机再试试。

但是重启之后通过ifconfig命令查看还是128,但是通过ip addr命令,发现既有128也有129。那这个效果就是和我们之前通过

# 重载网卡配置
nmcli c reload ens160

# 重启网卡
nmcli c up ens160

 再重新添加的效果是一样的。但是通过ssh工具确实是可以连接的。

我emo了。

2.3 方式三(成功)

我们换一台虚拟机,再简单搞一搞。

参考这篇文章:VMware克隆虚拟机后修改UUID、MAC地址、IP和主机名

1.生成mac

一般克隆完成后,虚拟机的网卡MAC地址会自动改变的,如果没有自动改变,可以手动修改。

 copy下刚才生成的mac地址,记不住也没关系,可以通过命令 ip addr查看。

 上图红框的就是mac地址

2.生成UUID

# 生成UUID
uuidgen

3.修改ip等

vim /etc/sysconfig/network-scripts/ifcfg-ens160

 

 

 修改内容有:

# 这个是将ip修改为固定ip

BOOTPROTO=static

UUID=刚才生成的uuid

IPADDR=192.168.1.118
NETMASK=255.255.255.0
GATEWAY=192.168.222.2
DNS1=8.8.8.8

HWADDR=刚才生成的mac地址

4.修改主机

4.1 临时修改主机名

hostnamectl set-hostname master

4.2 永久修改主机名

vim /etc/sysconfig/network

 设置值为:

HOSTNAME=redis-master01

vim /etc/hostname

直接输入你想要的主机名即可。

并不是所有版本的主机名都存在于/etc/hostname文件,如Fedora发行版将主机名存放在/etc/sysconfig/network文件中。所以,修改主机名时应注意区分是哪种linux发行版。

因此,如果两个文件都存在的话,我们最好都修改。

4.3 修改主机ip映射关系

vim /etc/hosts

 添加如下映射关系:

192.168.222.300 redis-master01
192.168.222.301 redis-master02
192.168.222.302 redis-master03

5. 重启网络

我们参考的文章中给的命令是

systemctl  restart  network

在我们的centos8中是不支持的。我们可以使用一下命令:

# 重载网卡配置
nmcli c reload ens160

# 重启网卡
nmcli c up ens160

其中ens160是我的,你的不一定是这个名字。

6.测试

我们检测一下:

 

 说明我们成功了。上一种方式不知道算不算成功。但是我们这个是成功了的。我们通过ssh工具连接试试。

注意:

上面修改的网关也就是3里面的 GATEWAY=192.168.222.2 不可以随便修改,必须保证和你的虚拟机在同一个网段中。当然也可以去VMWare中去查看。

编辑——虚拟网络编辑器

一般都是NAT模式。

 将3中的 GATEWAY=192.168.222.2修改到你电脑对应的这个网关即可。

如果网关设置错误,会导致虚拟机不能联网。

我就深受其害,而且问题不好排查,结果竟然是网关配置错误。可惜,可惜!

如果报错:未知的链接ens160,可以参考我另外一篇文章:

2.4 直接修改网卡

我们简化2.3的方案如下:

#查看网络设备名称,一般名称都是ens+数字,或者eth+数字
ip a
# 或者
ifconfig

# 修改网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens160
# 修改IPADDR的ip取值,无则添加

# 重启网卡:CentOS8以下
systemctl  restart  network

# 重启网卡:CentOS8(含)以上
# 重载网卡配置
nmcli c reload ens160
# 重启网卡
nmcli c up ens160

----------------------------------------------------本文完----------------------------------------------------------------

与君共勉,砥砺前行,不负此生!

祝好运!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐