2003年12月、LinuxシステムをFreeBSDにアップグレードするスクリプト「Depenguinator」が公開された。以後4年の沈黙を破って、同ツールが帰ってきた。

DepenguinatorはLinuxシステムをFreeBSDに再インストールするツール。リリース後、FreeBSDのシステム変更によって同スクリプトは動かなくなっていた。4年間そのまま放置されていたわけだが、支援を申し出る声に答えて最新のFreeBSDで動作するDepenguinator 2.0をリリースしたというわけだ。

# apt-get install curl
# apt-get install bsdtar
# apt-get install libc6-dev
# apt-get install zlib1g-dev
#
# curl http://www.daemonology.net/depenguinator/depenguin-2.0.tar.gz \> depenguin-2.0.tar.gz sha256sum depenguin-2.0.tar.gz
# tar -xzf depenguin-2.0.tar.gz
# cd depenguin-2.0
# mv depenguinator.conf.dist depenguinator.conf
# nano depenguinator.conf
#
# curl ftp://ftp.freebsd.org/pub/FreeBSD/releases/i386/ISO-IMAGES/7.0/7.0-RC1-i386-disc1.iso \> disc1.iso
# 
# sh -e makeimage.sh disc1.iso 7.0-RC1 ~/.ssh/authorized_keys
# 
# swapoff -a
# dd if=disk.img of=/dev/sda2
# 
# shutdown -r
UbuntuをFreeBSDに入れ替える処理の例

 

title   FreeBSD
root    (hd0,1)
makeactive
chainloader +1
GRUBでFreeBSDが起動するように設定

どちらかというとコンセプトプルーフ的なスクリプトだ。仕組みはシンプルで、スワップ領域にインストールディスクイメージを書き込んで、そこから起動するようにブートローダの設定を変更するというもの。FreeBSDに限らずほかのOSにも流用できそうだ。そのままインストールすればいいだけのような気がしなくもないのだが、仕組みを勉強するという点ではおもしろい教材だ。