follow me

VirtualBoxがオープンソース化

VirtualBoxがGPL2ライセンスで配布される様になったようです。

まずVirtualBoxとは、x86系PCのエミュレータです。
実際にインストールした感じでは、VMwareと同等の機能がありそうです。
・仮想マシンの一時停止
・スナップショットの取得
・物理ネットーワークへの接続
・NATネットワークの使用
・USBデバイスのエミュレーション
・CDドライブ
・Floppyドライブ
ほかにももろもろ

Slackware11.0をインストールしてみましたが、体感VMwareより少し遅いかもレベルで、十分使用できそうです。
スナップショット機能もありますのでLinuxの勉強用などにも良いのではないでしょうか。

あと、オープンソースなので、仮想テープドライブのエミュレーションとか作ったりしたら、バックアップソフトの検証にも使えたりしてw

follow me

VMwareでもCPUリソース制限

VMwareServerとMicrosoftのVirtualServerを比べてみると、VirtualServerで設定できるCPU使用率の制限設定がVMwareで出来ないのは気に入らなかったわけで。
探してみた。

見つかったのがCPU limit

これは良さそうだと思い試してみた。意外と普通に抑えられてる。
満足。
で、ソフトのビルドなんかもVMに影響しないようにしようと思い。cpulimit make 30なんてしてみたが。。。
CPU使用率100%状態。。。
cc1がCPU使用率99%。。。。。。。。
makeから呼び出されたプロセスまでは面倒見てくれないのね。。。。。
とりあえずVMの様に単一プロセスなら問題ないので、VMだけで使用しておきます。

暇な時にでもソース読んで、makeとかでバシバシ別プロセス呼んでもCPU制限出来るように修正しましょう。
follow me

Fedora6でVMwareServerを動かす

導入環境はFedora6 on Athlon64

VMware-Serverをインストールする前にまず、yum install kernel-develを実行。
そのあと、VMwareのrpmパッケージを導入。
/usr/bin/vmware-config.plを実行するがエラーで終了。

内容は、linux/config.hが見つからないとの事なので、空ファイルを作成するだけで問題ないです。
ここではモジュールを作成するだけなので、ファイルの内容は意味を持ちません。

で進んで行くと、シリアルを入力してもはじかれる。
エラーメッセージがちろっと表示されている。 libXt.so.6が無いようです。これは、32bitのライブラリが無いための様です。
libXtst.so.6があるはずなので、シンボリックリンクを作成し回避します。
ちなみに、もちろん64bitのlibXt.so.6では動かない。

とりあえず、導入は以上。
あと、xinetd入れとかないといけない。

ちなみにXenのカーネルでやってたら、VM起動時にタスクスイッチ箇所でやられちった。
follow me

Virtual Floppy Drive

意外と使ってみると便利だったVirtual Floppy Drive
。 Windows時代が来てフロッピーなんて使わなくなってしまったが、仮想Floppyドライブを作成してくれる、ちょっとした時に便利なツール。
Linuxでなら、Floppyイメージをループバックでマウントすればいいけれど。
このツールでWindowsでも可能に。

floppyfwいじる時に、かなり便利でした。
follow me

VMwareで共有ディスク

VMwareでクラスタ構成の検証でいつも使うのが
disk.locking = false
scsi1.present = "TRUE"
scsi1:0.present = "TRUE"
scsi1:0.fileName = "vmdkファイルへのパス"
scsi1:0.mode = "independent-persistent"
scsi1:0.deviceType = "plainDisk"
この、皆さんご存知の方法なわけですが。

IEEE1394でも共有ディスクは作成可能なはず。
IEEE1394の仕様ではマルチイニシエータを許可しているので、出来るはず。
SuSEでは、IEEE1394で共有ディスクを作成できるって、なんかのイベントで聞いた様な記憶も。
とりあえず、IEEE1394の箱買ってきて試したい。

まぁ、MSCSはSCSI以外は共有ディスクとしてみなしてくれないっぽいので、組めないそうですが。。。仮想ドライバ作れば出来るのかな?
follow me

Xen3で試すDebian on Fedora5

忘れない様にLog化しときます。
とりあえずは、Debian on Fedora5の作り方。

壱、debootstrapの準備
debootstrapのdebパッケージを入手し、中身を取り出し
/usr/binと/usr/lib以下を配置。
(パッケージ化した方が綺麗かもんw)

弐、イメージファイルの作成
dd -if=/dev/zero of /var/xen/debian/root.img bs=1M count=1 seek=2048
mkfs.ext2 /var/xen/debian/root.img
dd -if=/dev/zero of /var/xen/debian/swap.img bs=1M count=1 seek=512
mkswap /var/xen/debian/swap.img

参、debootstrapで作成
mount -o loop /var/xen/debian/root.img /mnt
debootstrap -arch i386 sarge /mnt http://ftp.jp.debian.org/debian
途中でエラーは出るが、完了した旨のメッセージが表示されれば問題なし。

四、インストーラで作成されるファイルを手動生成
echo "xenD" > /mnt/etc/mailname
echo "xenD" > /mnt/etc/hostname
/mnt/etc/resolv.conf 作成
/mnt/etc/hosts 作成
/mnt/etc/network/interfaces 作成

五、fstabの作成
vi /mnt/etc/fstab
/dev/sda1	/	ext2	defaults	0 0
/dev/sda2	none    swap	sw		0 0
proc		/proc	proc	defaults	0 0

六、aptの設定
vi /mnt/etc/apt/sources.list
deb http://http1.debian.or.jp/debian/ sarge main contrib non-free
deb http://http1.debian.or.jp/debian-non-US/ sarge/non-US main contrib non-free

七、xenD用設定ファイル作成
vi /etc/xen/xenD
name = "XenD"
memory = "256"
kernel = "/boot/vmlinuz-xenU"
initrd = "/boot/initrd-xenU.img"
root = "/dev/sda1 ro"
disk = [ 'file:/var/xen/debian/root.img,sda1,w', 'file:/var/xen/debian/swap.img,sda2,w' ]
vif = [ 'mac=00:16:3e:63:38:7d, bridge=xenbr0']
on_reboot   = 'restart'
on_crash    = 'restart'
Fedora5のXenUのカーネルを使うと、NICが認識しないので、カーネルとinitrdは自分で作り直す必要があります。
あと、この設定ファイルでIPアドレスも記載できる様だが、それがなんの意味を持つのだろうか。
follow me

Xen3.0のmake

Xen3.0のmakeやってみよう。
どうせやるなら、慣れたmake menuconfig; make;でカーネル作りたいよね。
う~ん、パッチどれから当てるんだ?5個あるぞ。
とりあえずメモ。

パッチあて
make prep-kernels
必要な元カーネルも勝手に落としてくれるわけでなかなかw。ネット繋がってなかったらどうするんだ?と一つ疑問に思う。

あと、もろもろを個別にコンパイルしたいのでので、こんなのがあるみたいなので利用w。
make docs ← ドキュメント
make install-docs
make kernels ← これは普通にmenuconfigで作ればいいかw
make install-kernels
make tools ← ツール(xmコマンドとかとか)
make install-tools
make xen ← これ本体ね
make install-xen

とりあえず、何も考えずmake worldなんかしたら、なきそうに時間かかったw。
Xのビルドしてるわけでもなくw

あと、GRUBの設定の書き方は
title Xen 3.0
     kernel /boot/xen.gz console=vga
     module /boot/vmlinuz-2.6-xen root= ro console=tty0
     module /boot/initrd-2.6-xen.img
こんな感じ

一応、xen.gzとvmlinuz-2.6-xenを一つにまとめる事も出来るみたいだけど、LILO使わないしこのままでw。
follow me

Xen in Fedora5

前から気になってたXenいじってみました。
まぁ、まずは動かしてみようって事で、Fedora Core 5から始めました。
もともと対応してるだけあって簡単簡単w。
やったのは以下の操作のみw

kernel-xenUパッケージも入れろって読んだような気もするがいらないっぽい。
本当にいらないのか?ビミョウだが。。。

うーん、画像分かりにくすぎだろ。。。
どうすれば起動してます的な画像が取れるんだろう。。。

# yum install xen
# yum install kernel-xen0
Xen0カーネルで起動して、Domain0のメモリサイズをちと調整
#xm mem-set 0 256
#xenguest-install.py
What is the name of your virtual machine? XenU
 How much RAM should be allocated (in megabytes)? 256
 What would you like to use as the disk (path)? /var/xen/XenU.img
 How large would you like the disk to be (in gigabytes)? 4
 What is the install location? http://ftp.riken.jp/Linux/fedora/core/5/i386/os
あとはそのままインストーラに従って進めていく、注意する点は、言語で英語以外は選択するべきではない。日本語を選択した場合は、ことごとく失敗してしまいます。
あと、ファイルのダウンロード元によってもうまくいかない事もあり、場所だけでなくrikenのftpでもなぜか失敗した。原因は分からないが、httpの方が安定?

インストールが終わったら、あとは起動w。すばらしいXenの世界へようこそ!!
# xm create -c XenU
follow me

VMToolsを使わないコツ

VMware上にLinuxを導入した場合で、広い画面を使うのにVMToolsは必要ありません。

あまり知られてないようなのですが、Xの設定で垂直周波数と水平周波数の設定を1~1000みたいに設定し、
画面解像度をSXGA等に設定してみると。。。。。。

ひろーい画面で立ち上がってくれます。
これでVMToolsとおさらば出来ますねw