Zentyal Forum, Linux Small Business Server

Zentyal Server => Installation and Upgrades => Topic started by: aacevedo on May 06, 2011, 06:56:54 pm

Title: [SOLVED] eth2 does not exist error after disk image recovery
Post by: aacevedo on May 06, 2011, 06:56:54 pm
Hi folks,
I have core version 2.0.16, which I setup in the lab for a customer. After being done with a complete configuration (plus a bunch of other stuff on the machine, which I really would not want to go over configuring again) I did a disk image with Clonezilla. This image I recovered on the server that is going to the customer. Both machines are identical (HP Proliant Microserver).

On my lab setup I have 2 NICs:
eth2 on the WAN with DHCP
eth3 internal static with IP (DHCP is then configured on this interface for the rest of the LAN).

The customer network setup should be:
eth0 WAN static (fixed IP and gateway given by their ISP)
eth1 internal static (no DHCP here, they have a Windows Server that is taking care of networking).

When I installed the machine in the customer's network the two cards had been renamed and settings were gone in Network Module (Method not set). I should have known this was bound to happen because the source image had two different NICs in it. I figured no sweat! I just need to reconfigure the module with the customer's settings.

My problem is that I am unable to reconfigure the network module. If I try to change the settings on the interfaces it reverts to Method not set and I get the "Interface eth2 does not exist" error.

After Ubuntu research (my knowledge is really basic) and tried to edit /etc/network/interfaces with the desired configuration. I also went into /etc/udev/rules.ds and edited 70-persistent-net.rules.

My interfaces file on the new machine had just this:

Code: [Select]
auto lo
iface lo inet loopback
on which I manually added the configuration of the two new cards. I have also learned now that this is to no avail since restarting the network module wipes the file back.

On the 70-persistent-net.rules file I, of course, found the two cards from the source machine plus the two new cards that were renamed. I deleted the lines of the old cards and gave the new cards their eth0 and eth1 names. This file was not wiped by Zentyal on restart.

Where is Zentyal reading the eth2 existence from? How can I reset the whole networking setup after the image recovery? Or should I just forget to use imaging software for something like this, install Zentyal from scratch and start the whole configuration process?

Thanks a lot for bearing with me on this long post and any help that you could give me. I'm sure I'm making some silly rookie mistake but that's how we all learn, isn't it? My customer is expecting the new machine anytime now!

Title: Re: [SOLVED] eth2 does not exist error after disk image recovery
Post by: aacevedo on May 16, 2011, 08:24:31 pm
In case it is any help to anyone who may have a similar problem, let me tell you how I finally solved it.

I went back to the source installation, set both NICs to "no set" and generated a new image. After recovering the new image in the new machine I went to /etc/udev/rules.d and removed the file 70-persistent-net.rules, rebooted the machine and went to the network module to configure the cards. This time the error went away and I was able to configure the cards.

The lesson learned is that when you are making an image of an installation network cards need to be disabled because they are being identified by their MAC address. The new installation gets confused by having MAC addresses of cards that do not exist.