CentOS sur HyperV - eth0 pas dans ifconfig?

9

J'ai lancé une installation CentOS dans HyperV et attribué une carte réseau de la même manière que je l'ai fait sur une machine virtuelle Ubuntu , cependant, l'appareil n'est tout simplement pas pris en charge.

Seul mon bouclage est trouvé par ifconfig.

Comment devrais-je résoudre le problème?

Incognito
la source
Que montre lsmodla machine virtuelle Ubuntu fonctionnelle pour un pilote de carte réseau? Ce module est-il chargé sur la machine virtuelle CentOS ? Que fait- ifconfig eth0 upon?
Caleb
Les deux systèmes d'exploitation ont un grand nombre de modules qui ne sont pas partagés entre eux (c'est-à-dire bien plus de 20). ifconfig eth0 indique "eth0: erreur lors de la récupération des informations d'interface: périphérique introuvable"
Incognito
2
Ne pas être condescendant ou trop pédant, mais courez-vous ifconfig -a? Une autre façon, plus compacte, de voir les interfaces réseau sur un système est d' ip a lutiliser (suppose iproute2, installé par défaut dans CentOS je crois).
Eli Heady
2
ifconfig -aa révélé que j'ai eth2

Réponses:

8

MISE À JOUR: Cela a été mis à jour pour refléter les modifications apportées à LIS v4 qui ne nécessitent plus d'exécuter le programme d'installation spécifique à la version. De plus, si tout ce dont vous avez besoin est que Hyper-V signale les informations dans l'onglet "Réseau", seules les étapes 1 à 4 sont nécessaires)

J'ai eu le même problème; réinstallé le pilote. Voici ce que j'ai fait:

  1. Installer CentOS
  2. Télécharger "Linux Integration Disk" pour Hyper-V de Microsoft (Il existe plusieurs versions, la dernière contient les distributions précédentes)
  3. Montez le fichier image ISO.
    sudo mount /dev/cdrom /media
  4. Exécutez install.shsous le dossier LISISO du CD Linux Integration Services (où xx est la dernière version ou la version spécifique dont vous avez besoin).
    sudo /LISISO/install.sh
  5. Créez un ifcfg-eth0fichier.
    nano /etc/sysconfig/network-scripts/ifcfg-eth0
  6. Insérez les lignes suivantes:

    DEVICE=eth0
    BOOTPROTO=dhcp
    ONBOOT=yes
    
  7. Sauvegarder et quitter

  8. Modifier ou créer un networkfichier
    nano /etc/sysconfig/network
  9. Insérez les lignes suivantes:

    NETWORKING=yes
    HOSTNAME=server-name.company.lan
    

    Sauvegarder et quitter

  10. Redémarrez et maintenant vous pouvez ping
Henry Aloni
la source
J'ai eu ce même problème aujourd'hui avec une nouvelle machine virtuelle RHEL 7.4, les seules étapes que j'ai dû effectuer étaient 5-9, et la seule chose que j'ai fait différemment est que (je n'ai pas inclus l'attribut HOSTNAME et j'ai utilisé vi au lieu de nano
Taegost
4

Il semble que les pilotes pour les cartes réseau virtualisées HyperV soient manquants dans la version du noyau CentOS que vous utilisez et soient présents dans la version Ubuntu que vous avez installée avec succès. Microsoft n'a que récemment introduit ses pilotes de périphériques virtuels dans le noyau principal. Je suppose que vous utilisez une version de CentOS qui n'inclut pas ces pilotes.

En ce qui concerne la façon de le dépanner, vous pouvez rechercher des messages du noyau liés au matériel réseau. Vérifiez la sortie de dmesg | lesset less /var/log/messages. Je chercherais des entrées contenant "net", "eth". Toute journalisation du noyau proviendra du chargement du module - succès ou erreur. S'il n'y a pas de modules de noyau pour la carte réseau virtualisée, le noyau n'aura probablement rien à dire sur le matériel non reconnu.

Lors de la création de la machine virtuelle, vous pouvez choisir d'ajouter une «carte réseau héritée» dans HyperV (au moins l'option utilisée pour être appelée ainsi). Cela présentera la carte réseau à l'OS invité comme essentiellement un appareil plus ancien, pour lequel l'invité aura, espérons-le, des pilotes.

Une fois que vous avez installé CentOS, vous pouvez installer les pilotes de Microsoft pour utiliser les périphériques virtuels les plus efficaces.

Eli Heady
la source
Je ne sais pas si cela a résolu le problème pour moi ou si le cas était que ma machine virtuelle n'avait que eth0 réglé en mode manuel, et j'ai dû activer DHCP et onboot
jcolebrand
1

Dans mon cas, j'ai ajouté une nouvelle machine virtuelle à Windows 10 Hyper-V en important un VHD de CentOS7 Linux. L'installation était correcte, mais la mise en réseau dans CentOS ne fonctionnait pas du tout. Pour résoudre le problème, dans Hyper-V, j'ai sélectionné la nouvelle machine virtuelle et modifié les paramètres. Sous Carte réseau, le commutateur virtuel a été défini sur "Non connecté" par défaut. La modification de ce paramètre sur "Commutateur par défaut" et l'enregistrement ont résolu le problème. Cela a résolu des erreurs telles qu'aucun périphérique approprié trouvé pour cette connexion et impossible de trouver eth0.

Barry Cox
la source