Sun, 31 Oct 2004

玄箱を買ってみた(今更)-(1)

玄人志向から発売されている、ネットワーク HDD BOX、 「玄箱」を買ってみました。

組み合わせた HDD は Seagate の ST3200822A。200GB。

PC パーツには疎いので、店員に「静かなのを」とだけ言って 買いました。おまけに、「内蔵するには、他になにか必要ですか?」なんて質問をしたので

店員:「(゜д゜)ハァ...(何言ってんだコイツ)...ドライバーですかね」

ケーブルとか何か必要かどうか聞こうとしたんですが、アホ客と思われたらしく、店員に冷たい眼で見られてしまいました。

スペック等は上記のページをご覧下さい。 CPU こそ PowerPC200MHz ですが、かなり素直?な Linux 機だと思えました。 GigaBit 版もでるようなので、値下がりも期待できます。

最近何台も扱っている組み込み Linux 機と印象が一番違うのは、大容量 HDD を内蔵するのが本来であるため、ディスクスペースを一切(FLASH メモリ等をメインのファイルシステムにしているものと違って)気にしなくて良いこと、CPU パワー、RAM もある程度載っていて、SWAP も自動的に確保されているので、セルフコンパイルがストレスなくできること、でしょうか。

なによりセルフコンパイルできるのはちょー便利です。 ソースがあれば、いつも PC-Linux で使っているツールをことごとくもっていけるのです。

リソースに制約のある組み込みクロス開発と違って、まず TFTP で転送だリモートデバッグだ NFS マウントだと、まずしょぼい環境の整備、どころか開墾から入らなければいけないのと大違いです。

あまっている HDD があるなら、1万円前半で買える小型静音 Linux Box としては、中古ノート PC かってくるよりかなりいいと思えます。なによりセットアップが全自動で必要最小限です。

騒音ですが、ファンがついているので無音ではありません。 また、内蔵 HDD にもよるでしょうが、民生用 HDD レコーダの録画開始音すら気になるような人には気になるでしょう。

電源とか基板とかは、見るからにショボイです。 特に電源は固定方法からして中途半端で、危ないです。

あと、現状のカーネルソースが古い上に、ソースコード CD 請求に 1000円(実費)がかかります。

ただ、カーネルソースはリコンフィグ(module 化の選択)したり、生でインターネットに接続するにはセキュリティパッチ等のためにも必要でしょうが、LAN 内でグループウェア立ち上げたり、AV サーバにするためのアプリケーションをリコンパイルするだけなら、開発環境バイナリ一式添付なのでまったく気にすることはありません。

以下、setup 時に手間取った点などを何点か。

1)VMware の仮想ネットワークアダプタが入っているせいか、KuroBoxSetup.exe が有線 LAN 経由のサブネットを誤認識 したため、正常に「玄箱」を初期化できなかった。

本来 「玄箱」が DHCP 経由で取得している アドレスが 192.168.x.abc であるのに、サブネットを 192.168.52.abc (VMware 仮想アダプタのサブネット)と誤認識。
このため、setup 起動時に、「玄箱」のネットワークアドレスを 強制的に変更する旨のメッセージが出て、失敗した。

→VMware仮想ネットワークアダプタを Disable することで、正常に。

2)ファームウェア 1.02 (現在公開されている新しいもの)にバージョンアップした場合、/ 以下の環境が(設定してあっても)書き換えられる。

→なにか Linux アプリを構築したり、Linux 側のユーザを作成してホームディレクトリにするには /mnt 以下に /home とかからシンボリックリンクを貼るようにするといいと思います。

/home/mio -> /mnt/home/mio てな感じでしょうか。

さて、必要なアプリのコンパイルですが、開発キットは添付 CD の binary フォルダ内に一式あるので、その中の .tar.gz を / ですべて上書き展開しておきます。

PC-Linux ばかり使ってて vi とシェルのディレクトリ移動にはたえられないので、普段の環境を移植しようと、普段使いの UNIX 用ファイルマネージャ fu (田代 卓 氏作、過去に NIFTY で入手)、と ng (日本語 Emacs クローン)を「セルフ」コンパイル(素晴らしい)。

どちらも VineLinux(i386) のときにコンパイルしたフォルダを tgz にして 移動、rm *.o or make clean; make したのですが、各ファイルのコンパイルはすべて正常に完了するものの、

3)fu,ng のどちらでも libtermcap がないとおこられました。

→LIBS = -lcurses で問題ないようなので、-ltermcap を -lcurses にしました。快調。

4)Wiki を入れてみました。標準装備の thttpd でも動きそうで設定の簡単なFSWikiを(重いけど)。

/www 以下に入れる分には(LAN 内では、です。生インターネットに開放しないように!)何の問題もなく動きます。thttpd.conf の cgi フォルダを確認して、それらしい名前のフォルダを作ってセットアップします(/www/cgi-bin-wiki/ とか)。

.htpasswd が邪魔なら、/www/index.htm のリダイレクトページを メニューページにしてしまいましょう。

が、/ パーティションの容量が少ない(2G)ので、/mnt 以下に移動したいところです。 thttpd はシンボリックリンクにうるさいので、データフォルダを /www 以下のシンボリックリンクにしても動きません。

そこで、wiki の setup.dat のデータフォルダを /mnt 以下に移しましょう。 (data,backup,attach,pdf,tmpl,log,config) は /mnt 以下の適当な箇所を設定しても問題ないようです。theme を動かすと、スタイルシートが読めなくなります。巨大になりそうなのは、せいぜい attach くらいだから、本文と attach が移動できれば、御の字でしょうか。

あと、細かいですが、/etc/ftpusers に root を追加、/etc/securetty の pts/[0-9] をコメントアウトして、ftp,telnet での root ログインを Disable しました。 ついでに /etc/issue.net のマシンの素性の分かるメッセージを削除。

sshd もインストールされるので、ftp や telnet 自体をやめるのが理想ですが、そのあたりはまあ、LAN 内だし、徐々にということで.....

LAN 内で使用すると決めたら、default route の設定は Web からできるので、未指定にして、LAN外に出れないようにしてしまいましょう。また、安全のためルータでも玄箱からの直接続、外へのルーティングを禁止しましょう。

おまけ:電源制御に AVR(AT90S2313) が使われているそうです。 かわいいですね。萌え。

追記:

5)サポートBBS の記事によると、GNU や他のオープンソースソフトをコンパイルする際、 Makefile 生成スクリプト(いわゆる ./configure の類) がビルド用コンフィギュレーションファイルの生成に失敗する。

→標準のバイナリに入っている egrep に問題があるのだそうです(バイトオーダの問題?)。最新の GNU-grep パッケージをとってきて再構築、インストールすれば直ります。grep の入れ替えによって、apache 1.3.xx がビルド、動作確認できました。

posted at: 15:43 | permanent link