私のネットワークインターフェイスは私のゲストコンピュータに表示されません。
デフォルト設定を使って最初からLinuxカーネルをコンパイルしています(3.3のようです)+
Symbol: NE2K_PCI [=y]
Type : tristate
Prompt: PCI NE2000 and clones support (see help)
なぜなら、これがqemuで使用されるデフォルトドライバであることをどこかで読んだからです。
それから始めましょう。
qemu-system-x86_64 -kernel repo/linux/arch/x86/boot/bzImage -boot d -initrd rootfs.img.gz -append "root=/dev/ram rdinit=/sbin/init"
qemu-system-x86_64 -ngraphic -kernel repo/linux/arch/x86/boot/bzImage -boot d -initrd rootfs.img -append "root=/dev/ram rdinit=/sbin/init console=ttyS0"
rootfsは_install
busybox + /proc /dev etc/init.d/rcSのディレクトリです。
#!/bin/sh
mount -t proc none /proc
mount -t sysfs none /sys
/sbin/mdev -s
しかし、起動後にインターフェイスが見つかりません。ifconfig -a
ループバックインターフェイスが簡単に表示されます。
~からhttp://www.tldp.org/HOWTO/Ethernet-HOWTO-2.htmlわかりました。一度見てみましょうか?System.map
ファイル名はne_probe
. と同じですが、実際には関連情報が見つかりません。
私の開始出力は次のとおりです http://pastebin.com/C2SmKjQA
予想通り、cat /proc/ioports は ne2k-pci に関する情報を表示しません。http://www.h7.dion.ne.jp/~qemu-win/HowToNetwork-en.html。
答え1
既定では、マニュアルで説明されているように、ユーザーモードネットワーキングが必要です。
デフォルトでは、QEMUはSLiRPユーザーネットワークバックエンドとゲストに適した仮想ネットワークデバイス(たとえば、ほとんどのx86 PCゲスト用のE1000 PCIカード)を作成します。
より良いことが必要な場合は、tap
ネットワーキングを検討してください。
コマンドに以下を追加しますqemu
。
-netdev tap,id=tap0 -device e1000,netdev=tap0
または以前のバージョンの場合qemu
:
-net nic -net tap,ifname=tap0,script=no,downscript=no
ルートで起動する必要があり、qemu
ホストネットワークを設定する必要があるかもしれません。
詳細については、次を参照してください。ウィキブックそしてQEMUネットワーク文書。