rbl.rbで引っかかる。

自宅でHikiの編集を行おうとおもったら、ログインできなかったので調べてみたら、lighttpdのエラーログに

RBL : xxx.xxx.xxx.xxx

と出ていた。Hikiのプラグインのrbl.rbで、niku.2ch.netをチェックしているのだが、プライベートアドレスだから引っかかったらしい。うーむ、除外設定するようにできないかな。それまではプラグイン自体を無効にしておかないと、変更できない。orz

Installing Lenny armel in USB thumb drive by Qemu.

I used netboot image.

$ qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-1-versatile -initrd initrd.gz -hda /dev/sdb -append "root=/dev/ram"

next first boot

qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-1-versatile -initrd initrd.img-2.6.26-1-versatile -hda /dev/sdb -append "root=/dev/sda1"

initrd.img-2.6.26-1-versatile is extracted from /boot/ of usb thumb drive.

Lennyにした際の忘れ物。

毎週金曜の定期リブートで、DNSサーバで、tinydns/dnscacheが起動しなかった。そもそも、/etc/inittabの下記のパスにsvscanbootが無い!

SV:123456:respawn:/command/svscanboot

で、daemontoolsパッケージのREADMEを読んでみたら、daemontools-runパッケージが必要とのこと。これをインストールすることで/etc/inittabのパスも/usr/bin/sbscanbootに書き換わり、/serviceディレクトリから、/etc/serviceディレクトリにシンボリックリンクも変更され、ちゃんと起動できるようになりましたよ、と。

Lenny armelをUSBにインストールする。

ARMネイティブマシンとして持っているのはPalm Tungsten|T, Armadillo-J, Armadillo-9, Chumbyしか持っていないので、もちろん作業用の環境ではない。なので、QEMUを使ってUSBメモリにLennyをインストールしてみた。

QEMUをインストールしておく。

$ sudo aptitude install qemu

netboot用のイメージをダウンロードする。

lennyのRC2のイメージをダウンロードした。

空のUSBを挿す。

今回の環境では/dev/sdb

qemuでインストーラを起動させる。

$ qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-1-versatile -initrd initrd.gz -hda /dev/sdb -append "root=/dev/ram"
  • ‘-M’で指定するマシンタイプは、chumbyに搭載されているCPUに合わせた。

# cat /proc/cpuinfo
Processor       : ARM926EJ-Sid(wb) rev 4 (v5l)
(snip)
  • 指定できるマシンタイプは-Mオプションに引数を与えなければ表示される。

$ qemu-system-arm -M
Supported machines are:
integratorcp ARM Integrator/CP (ARM926EJ-S) (default)
versatilepb ARM Versatile/PB (ARM926EJ-S)
versatileab ARM Versatile/AB (ARM926EJ-S)
realview   ARM RealView Emulation Baseboard (ARM926EJ-S)
akita      Akita PDA (PXA270)
spitz      Spitz PDA (PXA270)
borzoi     Borzoi PDA (PXA270)
terrier    Terrier PDA (PXA270)
cheetah    Palm Tungsten|E aka. Cheetah PDA (OMAP310)
lm3s811evb Stellaris LM3S811EVB
lm3s6965evb Stellaris LM3S6965EVB
connex     Gumstix Connex (PXA255)
verdex     Gumstix Verdex (PXA270)
mainstone  Mainstone II (PXA27x)

後は普通にDebianのインストール。

  • QEMUプロセスの中では、-hda /dev/sdbで指定したUSBメモリは、/dev/sdaとして認識されるので勘違いしないように。

  • 今回swap領域は用意しない。

  • ファイルシステムはext2とした。

やってみて不思議だったのは、qemuは一般ユーザで起動したのにも関わらず、USBメモリ(/dev/sdb)に書き込みができたこと。fstabのマウントオプションにはuserを付けているものの、別にマウントされているわけでもないのにな。この辺はqemu-ioを使っているKVMと同じと仮定すれば納得できるか。

ブート。

が、このままブートさせても、Netbootのインストール用のinitrdしかないので、インストールにしかならない。とりあえずそのまま一度起動させ、shellモードで、usbのファイルシステムをマウント、chrootし、/boot以下のinitrd.imgをssh経由で別サーバにscpして、ホストOSのローカルにまで持ってきた。

qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-1-versatile -initrd initrd.img-2.6.26-1-versatile -hda /dev/sdb -append "root=/dev/sda1"

起動したらこんな感じ。 1

../../../_images/20090214013422.png
1

ホスト名がchumbyとなっているけど、chumbyじゃないので要注意。

飛び起きた。

眠くてベッドでダラダラ寝ていたのだが、宮沢りえの妊娠6ヵ月&結婚か?のニュースを見て飛び起きた。ビックリした。