虚拟机里创建新主机使用克隆的办法,可以大大节省主机反复安装消耗的时间精力。但克隆出来的主机网卡及配置文件会发生改变,给我们在进行网卡设置时的很多麻烦。题主本文将从Linux里CentOS6发行版克隆的主机网卡重新恢复为我们习惯的形态,这样可以很方便地对网卡进行设置了。

  在VMWare中安装CentOS6的过程不再详述。安装设定虚拟机网卡为桥接如下:

  此时看下刚安装的CentOS虚拟系统网卡的信息如下:

  一是使用dmesg查看网卡信息如下:

  ifconfig下看到的也是我们熟悉的“eth0”网卡:

  在/etc/sysconfig/network-scripts/目录下也是我们熟悉的网卡配置文件“ifcfg-eth0”

  最重要的是,查看ifcfg-eth0中网卡的MAC地址与上述dmesg和ifconfig中看到的MAC地址均一致,网卡编号也均为“eth0”。

  我们将这个虚拟机关机,克隆出一台一模一样的机器,如下:

  在“克隆虚拟机向导”中选择“下一步”,再“下一步”

  后面可选择“创建链接克隆”或“创建完整克隆”。创建链接克隆依赖原虚拟机系统,占用磁盘空间较小;创建完整克隆可以不依赖原虚拟机运行,需要占用完整的虚拟机所需磁盘空间。因两种方式都不影响正常使用,我们选择“创建链接克隆”,然后“下一步”:

  虚拟机名称任意,选择一个存放克隆机的文件夹,然后完成:

  此时新建的克隆虚拟机配置与原机完全一致,但一些区别只有在开机后才能看出来。现在我们打开克隆完成的虚拟机:

  使用dmesg查看网卡信息时,我们注意到网卡信息中多了一行,我们熟悉的eth0已经被renamed成了eth1:

  多了个“eth1”!我们再看看另外两条网卡的信息。ifconfig下看到的已经不是我们熟悉的“eth0”网卡,而变成了“eth1”:

  在/etc/sysconfig/network-scripts/目录下仍然是我们熟悉的网卡配置文件“ifcfg-eth0”

  但查看“ifcfg-eth0”文件中的MAC地址却与上述dmesg命令及ifconfig命令看到的MAC地址不一致。这样,在我们试图使用ifcfg-eth0文件配置本机网卡参数时就碰到了麻烦,想按照自己的想法调整虚拟机的IP地址等参数,无论怎样修改ifcfg-eth0文件都达不到目的。

  是什么原因呢?原来VMware在实现克隆时,已经将原虚拟主机的MAC地址进行了修改,以满足任何虚拟主机MAC地址的唯一性。但显然没有按照linux的常规方法将iifcfg-ethX文件进行修改。这时ifcfg-ethX文件在克隆机里并没有起到配置网卡的作用。要重新起用ifcfg-ethX文件的网络配置作用,要将这个文件的MAC地址改为与上述ifconfig显示的MAC一致,再对设备选项作一些修改如下:

  首先将ifcfg-ethX文件的MAC地址改为上述ifconfig中显示出的地址,修改文件内容的命令和修改完成后的内容如下(手动将网卡IP地址分配为192.168.1.50):

  配置文件修改内容:HWADDR网卡MAC地址,要保证此MAC地址与ifconfig及dmesg命令所显示的MAC地址一致;UUID行删除;BOOTPROTO修改为“none”表示不使用自动分配地址。IP网络参数是新加入以为主机的静态地址。

  后面是最关键的一步:修改网卡设备信息。输入以下命令:

  前文说到,克隆主机在使用dmesg命令查看网卡时有一行

  

  代表克隆主机已经将eth0网卡renamed为eth1,所以修改上述文件时,将原“NAME="eth0"”这一行删除,将原“NAME="eth1"”改为NAME="eth0",保存退出。重启克隆虚拟主机。此时再看ifconfig网卡配置,已经按照ifcfg-eth0文件中的描述完成了固定IP地址的配置如下:

  这样我们便可以自由地使用ifcfg-eth0配置主机的ip地址。

  Linux经常会有需要安装第二张甚至第三张网卡的情况,题主在已经设置好第一张网卡的虚拟主机上添加一张网卡,如下图:

  设置添加的网络适配器,在网络连接类型选“自定义”中的任意一张网卡如“VMnet3”:

   然后开启主机:

  开机后使用查看网卡设备,再使用ifconfig查看,看到两者都增加了一张MAC地址一致的eth1网卡,再看网卡配置文件目录却没有对应的ifcfg-eth1而仅有原来的ifcfg-eth0配置文件:

  我们要创建一个eth1的配置文件,可以先复制ifcfg-eth0为ifcfg-eth1,再修改ifcfg-eth1文件:

  ifcfg-eth1文件务必将“DEVICE=eth0”中eth0修改为与文件名一致的eth1;MAC地址修改为ifconfig中看到的MAC地址,还需要将“IPADDR”改为其他地址如192.168.100.50;其他的按需配置,然后勿忘存盘:

  重启系统,再用ifconfig查看配置,一切都已经变成我们所希望看到:

 

  在克隆虚拟主机时,第二、第三张网卡有可能会被renamed为eht2、eth3、eth4等,这种情况下可发编辑命令:

  使用前述方法删除行、修改“NAME=ethX”,再重建ifcfg-ethX文件的方法进行配置,再重启主机即可达到同样结果。

克隆Linux系统的网卡设置的更多相关文章

  1. Linux系统下如何设置IP地址?

    Linux系统下如何设置IP地址?我们可以通过命令设定IP的方法,不过此方法的前提条件是用户需root权限.在linux系统的 /etc/sysconfig/network-script/ifcfg- ...

  2. Linux系统时间的设置

    1. Linux系统时间的设置 在Linux中设置系统时间,可以用date命令: //查看时间[root@node1 ~]# dateTue Feb 25 20:15:18 CST 2014//修改时 ...

  3. 网络基础 图解Windows系统下单网卡设置双IP访问不同网段的方法

    图解Windows系统下单网卡设置双IP访问不同网段的方法 by:授客 QQ:1033553122 在Windows系统下即使只有一块网卡,同样可以实现双IP访问不同网段. 例: 外网信息: IP:1 ...

  4. 在VMware上克隆Linux虚拟机及其网卡配置方法

    最近在搭建Hadoop集群,1个Master,3个Workers.使用VMware workstations创建Linux虚拟机,版本是CentOS7.安装完成并做了相应的网络配置后,使用VMware ...

  5. 新装Linux系统没有网卡驱动的解决办法和步骤

    Linux下查看网卡驱动和版本信息 - CSDN博客 https://blog.csdn.net/guyan1101/article/details/72770424/ 检查网卡是否加载 - Linu ...

  6. 用"再生龙"Clonezilla 来克隆Linux系统

      上周公司买了5套高配置PC机来做测试用.上面要装好CentOS 加上一堆工具,有web的,数据库的,还有一些自己开发的工具.有些朋友肯定想,直接用kickstart不就行了,确实.kickstar ...

  7. VMware 克隆 Linux 系统后找不到 eth0 网卡问题(转)

    [问题描述] 使用 VMware 虚拟机的克隆功能,快速复制已安装好的 Linux 系统. 克隆完成之后,发现没有 eth0 网卡. [解决方法] 1. 编辑 /etc/udev/rules.d/70 ...

  8. 【转】VMware 克隆 Linux 系统后找不到 eth0 网卡问题

    [问题描述] 使用 VMware 虚拟机的克隆功能,快速复制已安装好的 Linux 系统. 克隆完成之后,发现没有 eth0 网卡. [解决方法] 1. 编辑 /etc/udev/rules.d/70 ...

  9. 使用VMware克隆Linux系统

    最近在学习使用solr云技术,因为是用来学习操作,因此需要在一台虚拟机上,安装多台LinuxOS. 但是又想偷懒,不想每安装一个LinuxOS,就重新配置Linux环境,所以使用克隆,只需安装好一个模 ...

随机推荐

  1. 命令mark

    for i in `sudo /usr/local/sbin/fping -g 10.181.37.0/26 -p 10 -r 1 | grep alive | awk '{print $1 }'`; ...

  2. GCC版本中没有GLIBCXX_3.4.15错误

    解决错误呈现该错误的原因是当前的GCC版本中,没有GLIBCXX_3.4.15,须要安装更高版本.我们可以输入:strings /usr/lib64/libstdc++.so.6 | grep GLI ...

  3. Docker实践之03-Dockerfile指令详解

    目录 FROM,指定基础镜像 RUN,执行命令 COPY,复制文件 ADD,复制并解压文件 CMD,容器启动命令 ENTRYPOINT,入口点 ENV,设置环境变量 ARG,构建参数 VOLUME,定 ...

  4. docker笔记2--镜像容器基本使用

    1 docker的安装 系统:centos7 (1)配置好yum (2)yum -y install docker (3)查看状态 systemctl status docker 2 docker镜像 ...

  5. Jenkins通过完全复制快速创建新项目

  6. filter和map内置函数

    filter filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回 ...

  7. 08 Spring框架的概念、优势、体系结构、耦合性和IOC(反转控制)

    1.spring介绍 Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control: 反转控制)和 AOP(Aspect ...

  8. 在Python中创建和使用类

    编程只是 if : 为了少写重复的代码,有了循环 for/while: 但碰到很长的重复代码,可能用一个循环难以实现,所以出现了面向对象的思想: 类:就是你的循环主体 实例:就是对你的循环的一次调用 ...

  9. Scrapy框架——介绍、安装、命令行创建,启动、项目目录结构介绍、Spiders文件夹详解(包括去重规则)、Selectors解析页面、Items、pipelines(自定义pipeline)、下载中间件(Downloader Middleware)、爬虫中间件、信号

    一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...

  10. VC6.0- C语言-winsocket-警告warning C4761

    错误介绍 操作系统:windows10 IDE:VC6.0 语言:C语言 项目内容简介:编写一个双人网络海战棋对战游戏 警告类型:警告warning C4761 integral size misma ...