web-dev-qa-db-fra.com

Comment renommer ou changer les noms des cartes d'interface réseau donnés par la couche d'abstraction matérielle? (Ubuntu 14.04.3)

J'ai créé un système en direct en utilisant Systemback dans "l'ordinateur A" et l'ai installé sans problème dans "l'ordinateur B" mais le seul inconvénient est que HAL a donné à mes cartes d'interface réseau les noms eth1 à l'interface câblée et wlan2 à l'interface sans fil de "l'ordinateur B". J'ai beaucoup de scripts et d'alias codés en dur (MAUVAISE PRATIQUE, je sais).

Systemback a créé une copie exacte de ma configuration dans "l'ordinateur A", c'est pourquoi dans "l'ordinateur B", il n'a pas pu distribuer eth0 et wlan0 car ces deux noms étaient déjà utilisés.

Je sais comment et je peux facilement remplacer le texte problématique par sed dans tous les scripts et alias, mais j'aimerais savoir comment puis-je changer ces noms donnés par HAL.

2
zehnner

Voici ce qui s'est passé: lorsque vous avez effectué la configuration d'origine sur le système A, votre machine a réservé les noms eth0 et wlan0 pour les périphériques particuliers que vous aviez sur cette machine.

Lorsque vous avez migré vers le système B, les nouveaux périphériques réseau ont été trouvés et (comme vous l'avez mentionné) renommés pour ne pas entrer en conflit avec les définitions antérieures de eth0 et wlan0.

Ce mappage original des noms est conservé dans:

/etc/udev/rules.d/70-persistent-net.rules

Si vous supprimez ce fichier, votre prochain démarrage démarrera sans aucun nom "réservé" pour ces périphériques réseau dans le système A, et vous obtiendrez eth0 et wlan0.

S'ils sont découverts dans un ordre différent (par exemple, si vous disposiez de deux appareils ethX dans le système B et que vous les attendez dans un ordre différent), vous pouvez modifier le NAME= définitions dans ce fichier pour répondre à vos propres exigences de dénomination.

1
Jeremy Kerr