web-dev-qa-db-ja.com

HyperV上のCentOS-ifconfigにeth0がない?

Hyper-VでCentOSインストールを起動し、bunt VMで行ったのと同じ方法でNICを割り当てましたが、デバイスがピックアップされないだけです。

ループバックのみがifconfigで見つかりました。

これをトラブルシューティングするにはどうすればいいですか?

9
Incognito

PDATE:これは、バージョン固有のインストーラーを実行する必要がなくなったLIS v4での変更を反映するように更新されました。また、Hyper-Vが[ネットワーク]タブの情報を報告する必要がある場合は、手順1〜4のみが必要です)

私も同じ問題を抱えていました。ドライバを再インストールした。これが私がしたことです:

  1. CentOSをインストールする
  2. MicrosoftからHyper-V用の「Linux統合ディスク」をダウンロードします(複数のバージョンがあり、最新バージョンには以前のディストリビューションが含まれています)
  3. ISOイメージファイルをマウントします。
    Sudo mount /dev/cdrom /media
  4. Linux Integration Services CDのLISISOフォルダでinstall.shを実行します(xxは最新バージョン、または必要な特定のバージョンです)。
    Sudo /LISISO/install.sh
  5. ifcfg-eth0ファイルを作成します。
    nano /etc/sysconfig/network-scripts/ifcfg-eth0
  6. 次の行を挿入します。

    DEVICE=eth0
    BOOTPROTO=dhcp
    ONBOOT=yes
    
  7. 保存して終了

  8. networkファイルを編集または作成する
    nano /etc/sysconfig/network
  9. 次の行を挿入します。

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

    保存して終了

  10. 再起動すると、pingを実行できます
8
Henry Aloni

HyperV仮想化NICのドライバーが、使用しているCentOSカーネルバージョンから欠落しており、正常にインストールされたUbuntuバージョンに存在するようです。 Microsoftは最近、仮想デバイスドライバーをメインラインカーネルに導入しました。私の推測では、これらのドライバーを含まないバージョンのCentOSを使用していると思います。

トラブルシューティングの方法に関しては、ネットワークハードウェアに関連するカーネルメッセージを探すことができます。 dmesg | lessおよびless /var/log/messagesの出力を確認してください。 「net」、「eth」を含むエントリを探します。カーネルのロギングはすべて、モジュールのロードから行われます-成功またはエラー。仮想化されたNICのカーネルモジュールがない場合、カーネルは認識されていないハードウェアについて何も言うことがないでしょう。

VMを作成するとき、HyperVに「レガシーネットワークアダプター」を追加することを選択できます(少なくとも、これを呼び出すために使用されていたオプション)。これにより、NIC=ゲストOSに、ゲストがドライバーを持っていると思われる本質的に古いデバイスとして表示されます。

CentOSをインストールしたら、Microsoftから install drivers を使用して、より効率的な仮想デバイスを利用できます。

4
Eli Heady

私の場合、CentOS7 LinuxのVHDをインポートして、新しいVMをWindows 10 Hyper-Vに追加しました。インストールは問題ありませんでしたが、CentOSのネットワークがまったく機能していませんでした。問題、Hyper-Vで、新しいVM=を選択し、設定を編集しました。ネットワークアダプターの下で、仮想スイッチはデフォルトで「未接続」に設定されていました。これを「デフォルトスイッチ」に変更この接続で適切なデバイスが見つからない、eth0が見つからないなどのエラーが解決されました。

1
Barry Cox

VMおよびeth0のgrepで/ var/log/messagesを確認することもできます。私の状況では、カーネルはブート中に(レガシーネットワークアダプターで)eth0からeth5を使用するように切り替わりました。

1
Jeff