2008年9月15日月曜日

Gentoo & qemu

http://gentoo-wiki.com/HOWTO:_Qemu

gcc 4.X だとコンパイルできないので、3.X を持ってくる。
emerge -av sys-devel/gcc:3.4

- x86_64環境で /etc/make.conf に CFLAGS="-O2 -march=core2 -pipe" を書いてる場合は
sudo sh -c "CFLAGS=\"-O2 -pipe\" CXXFLAGS=\"-O2 -pipe\" emerge sys-devel/gcc:3.4"

gcc-3.4 でコンパイル
sudo sh -c "CC=gcc-3.4 emerge qemu-softmmu"

ネットワークに tun を使うならコレも
emerge sys-apps/usermode-utilities

ネットワークに bridge を使うならコレも
emerge net-misc/bridge-utils

kqemuを使うなら
cat /etc/modules.autoload.d/kernel-2.6
kqemu major=0

group qemu に追加
gpasswd -a HOGE qemu

ネットワーク込みの起動スクリブトはこんなのでいいらしい。

#!/bin/bash
set -x
User=$USER
TAP=$(sudo tunctl -b -u $User)
sudo /sbin/ifconfig $TAP 0.0.0.0 promisc up
sudo /sbin/brctl addif br0 $TAP
qemu -hda hda.img -net nic -net tap,ifname=$TAP,script=no
sudo tunctl -d $TAP

もちろん、ネットワークはbridgeで設定してないとダメ。
/etc/init.d/net.eth0 stop
brctl addbr br0
brctl addif br0 eth0
ifconfig eth0 up
ifconfig br0 up
dhcpcd br0

0 件のコメント: