Damn Small Linuxの不思議
玄箱から、昔のThinkpadへ
LAN内のお遊びサーバーとして、玄箱にDebianを入れて使っていたんだけど、WordPressを入れてみたらびっくりするほど動作がのろく、ページ遷移のあいだに眠ってしまいそうなくらい時間がかかったので、こりゃあ、やっぱりだめだなあ、と代替サーバーをでっちあげることにした。
数年前に買って、今はもう使われていないThinkpadがあったのを思い出し、(Windows MEがのっていた) それに、Linuxを入れてやろうと画策。
最近は、どんなディストリビューションがはやりなんじゃろう、と色々調べていくうちに、KNOPPIXに目が留まる。なんかHDDに入れて使うこともできるらしいので、じゃあこれでいこうかと思ったら、ISOが700MBあって断念。
もっと小柄なやつはないかな、と、ライブCDの部屋など、色々みてまわっていたら、Damn Small Linuxというのを発見。
Damn Small Linux
早速、CD-Rに入れて動かしてみる。快適だ。デスクトップ上のメニューから「HDDへインストール」を選ぶと、しょっぼいインストーラーが動いて、あっというまにインストール完了。
こりゃあ、便利な世の中になったもんじゃあ、と思ったら、様子がおかしい。
WordPressを動かしていると、mysqlが死ぬ。あれー、と思っていると、そのうち、つなげていたTeraTermも急に閉じてしまう。
Linuxのswap
fdiskからやりなおすのは面倒くさかったので、色々調べてみた。
- partedで、パーティションをきりなおすと、全部入れなおさなくてもいいかもしれない(これはやってない)
- swapdというデーモンがある。apt-get install swapdするだけ。動的にスワップ領域を確保してくれる素敵なデーモンらしい。が、説明書を読む限り、初期状態では、swapファイル一個4MBで、それが7個までしか作れない、と書いてあるように読める。これでは足りない。
- パーティションきらなくても、ふつうの(?)ファイルを用意してスワップとして使える。備忘録としてメモ。
dd if=/dev/zero of=swapfile bs=1024 count=262144 (256MBの場合) mkswap swapfile 262144 sync swapon swapfile /etc/fstabに追加 「/swapfile /swapfile swap sw 0 0」
で、これが簡単そうなのでこれ。とりあえず、落ちなくなった。(でもやっぱりWordPressは動作が緩慢に感じられる)
デスクトップは悪くないDamn Small Linux
この、ウィンドウマネージャっていうのかな、なんか必要最小限でいい感じ。
お遊びサーバーなんで、ふだんはGUI使わないんだけど。rdesktopが入ってて、Windowsマシンにつなげることもできる。
ちなみに、撮影したこの画面、拡張子がxwdとかいうのになってて、なんじゃーとおもって調べてみたら、ImageMagickのconvertというのでJPEGに変換できると。じゃあ、ってんで、早速入れてみたら、
root@0[root]# convert convert: error while loading shared libraries: libdpstk.so.1: cannot open shared object file: No such file or directory
といわれた。色々調べてみた結果、libdps1というパッケージに「/usr/X11R6/lib/libdpstk.so.1.0」が入っていた。いちいち面倒くさい。
Damn Stupid Linux?
とりあえず、ここまでで、ひととおりはできたんだけど、なんだか様子が変だ。
- apt-get installで、エラーになることがおおい。
- unzipで、展開できないファイルがあった
- sedがおかしい気がする
sedは、こんなふうになる。
root@0[/]# sed -e 's/hoge/fuga/i' sed: bad option in substitution expression root@0[/]# sed -e 's/hoge/fuga/I' hoge aaa fuga aaa root@0[/]#
これって、普通のsedの挙動と違うような気がするんだけど、どうだろう? (これが原因でapt-get installのpostinstスクリプトがエラーになって大変なことになった。。
apt-get installは、ほかにも、色々な原因で失敗しているような気がする。
なんか、あやしげなので、ちゃんとしたLinuxに入れ替えるかもしれない。
chroot
debootstrapして、chrootしてapacheとかlighttpdとかphp4とphp5とか、色々動かしてやろうと思っているんだけど、慣れてないと色々と面倒くさい、ということが判明。
chrootした環境ごとにIPアドレスを割り振って、そこにtelnetなりsshなりで、ログインして色々する、って感じだと、わかりやすくて簡単なような気がするんだけど、そういうのは容易にはできないもんなんだろうか。(こういう使い方するもんじゃないようなきがしてきた)
IPエイリアスとかいう機能で、親環境のアダプタに余分なIPアドレスをわりふって……でも、ポートは同じ口をchroot環境ごとにあけることはでき……ないのかな? よくわからない。
色々調べてみると、FreeBSDの、jailというやつを使うと、おれのやりたいことが簡単にできそうだ。ああどうしよう。
とりあえず、増設メモリ買ってこよっと。64MBだとちょっときつい。