Akim Sissaoui

Akim aussi, il blogue. Il blogue, il blague et partage ses découvertes

SIOCSIFADDR: No such device eth0

Voici une erreur assez commune, mais les réponses pour sa résolution sont diverses, et pas toujours éclairée. Voici donc ma version, que je trouve un excellent compromis, et fonctionne très bien.

Le problème rencontré est le suivant: Vous venez de copier une machine virtuelle existante. Vous l’avez ajouter dans l’inventaire de VMWare, puis, lors du premier démarrage, vous avez répondu « Je l’ai copiée » à la classique question. Ceci a eu pour effet de générer une nouvelles UUID pour la machine, mais également une nouvelle MAC Address pour la carte réseau virtuelle. C’est de là que vient le problème cité en titre.

Pour vous en sortir, nul besoin de tout réinstaller, ni de recompiler votre réseau ou je ne sais quelle autre ânerie. Simplement:

Arrêtez le service udev et le service networking:

/etc/init.d/networking stop
/etc/init.d/udev stop

Editez le fichier de règles persistentes réseau:

Sur Ubuntu: /etc/udev/rules.d/70-persistent-net.rules
Sur Debian: /etc/udev/rules.d/z25-persistent-net.rules

Vous trouverez deux instances faisant référence (à la fin des lignes) l’une à eth0, et l’autre à eth1.

# PCI device 0x1022:0x2000 (vmxnet)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:36:xx:xx", ATTR{type}=="1", NAME="eth0"
 
# PCI device 0x1022:0x2000 (vmxnet)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:75:xx:xx", ATTR{type}=="1", NAME="eth1"

Effacez la première instance. Celle-ci fait référence à la carte réseau (et la MAC Address) de la machine virtuelle source de votre copie. Ensuite, à la fin de la deuxième instance, remplacez « eth1″ par « eth0″. Si vous le souhaitez, vous pouvez vérifier dans l’interface VMWare que l’adresse MAC correspond bien à l’adresse MAC de votre nouvelle machine.

# PCI device 0x1022:0x2000 (vmxnet)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:75:xx:xx", ATTR{type}=="1", NAME="eth0"

Sauvez le fichier (bien sûr), et redémarrer les services udev et network

/etc/init.d/udev start
/etc/init.d/networking start

Et voilà le travail… Tout devrait être rentré dans l’ordre… C’est pas beau la vie ?

Comments

Comment

*