• [转] Linux下移动virtualbox虚拟硬盘丢失eth0


    1.遇到什么的问题(What)
          在新的virtualbox虚拟机上挂上曾使用过的虚拟硬盘,在启动的时候,发现找不到网卡eth0,
    在输入ifconfig –a的时候,也没有任何Ethnet的信息,而输入eth0 down 的时候,提示我no device found(设备没法找到),我检查了VMware的EtherNET配置的时候,仍旧是NAT网络设置,和我原来的一样
        
    2.怎样解决(How)

        回想了在启动virtualbox的时候,系统提示我的Ubuntu文件被移动(位置被改变了),让我确认是moved还是copy的,我当时候选择了默认的(copy)

    里面提到了多种解决方案,我最终是选择了sudo rm /etc/udev/rules.d/70-persistent-net.rules ,执行该命令后,重启ubuntu (sudo reboot),然后ifconfig ,出现了ip地址,问题得到解决


    3.为什么会出现这样的错误,这样做的原因是什么(Why?)
        为什么会产生这个问题呢,还需要从UUID谈起(UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成UUID的API ),虚拟机同样会有一个UUID,而且这个UUID是唯一的。
    虚拟机的UUID一般和虚拟机配置文件的位置和物理主机有关。当我们对一个虚拟机系统做移动操作的时候,我们不需要新建一个UUID。让我们复制一个虚拟机的时候我们应该选择建立一个新的UUID,来保证此虚拟机的唯一性
        而当我选择了I copied it的时候,VM自然会为我新建一个UUID,一些新的Linux版本是把以太网与Mac地址绑定,当新的UUID建立的时候,Mac地址就被改变了,但由于eth0设备所装载的配置与读取默认配置的Mac地址不一致。
    另外的解决方案:进入 /etc/sysconfig/network 或者/etc/sysconfig/network-scripts ,编辑eth0配置文件。比较在配置文件里面的Mac地址与输入ifconfig 输出的mac地址,如果两者不一致,统一为ifconfig输出的mac地址,然后重启

    sudo rm /etc/udev/rules.d/70-persistent-net.rules能够成功的原因:
    该文件的内容:

    1. # This file was automatically generated by the/lib/udev/write_net_rules
    2. # program,run by the persistent-net-generator.rules rules file.
    3. #
    4. # You can modify it,as long as you keepeachruleona single
    5. # line,andchange only the value of the NAME=key.
    6. # PCI device 0x1022:0x2000(pcnet32)
    7. SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="08:00:27:ae:14:85",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"
    8. # PCI device 0x1022:0x2000(pcnet32)
    9. SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="08:00:27:b7:46:db",ATTR{type}=="1",KERNEL=="eth*",NAME="eth1"
    10. # PCI device 0x1022:0x2000(pcnet32)
    11. SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="08:00:27:be:69:6a",ATTR{type}=="1",KERNEL=="eth*",NAME="eth2"
    12. # PCI device 0x1022:0x2000(pcnet32)
    13. SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="08:00:27:87:12:a0",ATTR{type}=="1",KERNEL=="eth*",NAME="eth3"
        将这个/etc/udev/rules.d/70-persistent-net.rules删除,重启,网卡eth0成功启动,并重新生成/etc/udev/rules.d/70-persistent-net.rules文件

    转载于:http://hi.baidu.com/yss1983/item/1a5fadb8c098f8eb4ec7fd65   博文作者: 书生意气

  • 相关阅读:
    Lua笔记
    psp info
    防火墙选项变成灰色解决办法
    server error.分析器错误信息: 未能加载类型. line 1
    [C++][stl]vector、list、deque
    恢复隐藏文件ShowAll.reg
    C++笔记
    C#成员的继承
    C#运算符重载
    .NET每个开发人员现在应该下载的十种必备工具
  • 原文地址:https://www.cnblogs.com/xunbu7/p/4434924.html
Copyright © 2020-2023  润新知