2008-08-20

玄箱Debian化~(1)セットアップ

容量が足りなくなってきた玄箱(無印/初代)用に新しいHDD(WD6400AAKS/Western Digital・640GB SATA)を買ってきたので、入れ替えることにします。
ただのNASとして使うのもつまらないので、Debian化。手順をまとめておきます。

[注] 玄箱(無印/初代)についてです

世の中にはより高性能な「玄箱PRO」や「玄箱HG」なんてのもあるみたいですが、これは無印の初代「玄箱」についてです。今から買うならPROとかのほうが楽しいかもしれませんが、初代だとお安いという利点も。(たとえばアマゾンだと9,681円
で、これから書いていくのは初代・玄箱についての話です。玄箱PROとは随分違うみたいなのでご注意ください。

Debian化

そのままでもNASとして使えますが、せっかくなのでDebianをインストールして、より汎用的なLinux Boxとして使えるようにします。

  1. HDDを玄箱につなぐ
    注意すべき点としては、玄箱用IDE-SATA変換アダプタを使う場合、IDEケーブルを丁寧に折りたたむこと。最初、適当に組み立てたらケースが微妙にずれてしまい、電源ボタンを押しても戻ってこない状態になってしまいました。
  2. 公式ツールでHDDを初期化
    公式ツールは本体付属のCD-ROMに入っていますが、公式サイトからもダウンロードできます。
    Windowsマシンから実行することで、ネットワーク越しに玄箱のHDDのパーティションを切ったりしてくれます。
    また、玄箱のIPアドレスを調べるのにも便利です。
  3. HDDの自動初期設定に失敗
    ところが、この公式ツールがエラー終了してしまうのでした。仕方ないので直接玄箱にログインして確認してみます。
    telnet で普通にログインできます。IPアドレスは公式ツール上に表示されています。LAN内にDHCPサーバがある場合はDHCPでIPアドレスを取得しているようです。ID/passはroot/kuro。
    ログインして、まずはHDDがマウントされているかを確認。
    # mount
    
    マウントされていません。パーティションはどうなっているでしょう?
    # /sbin/mfdisk -p /dev/hda
    Units = /dev/hda, 173MB
    /dev/hda1 = Linux, ext3
    /dev/hda2 = Linux swap, swap
    /dev/hda3 = Linux, ext3
    
    640GBのHDDを「173MB」とか言ってるところにイヤ~なものを感じます。このHDDは対応していないのか? それとも初期不良? いやいやHDDじゃなくてIDE-SATA変換アダプタに問題が?
    とりあえず、パーティション設定を手動でやり直してみましょう。
  4. パーティションを切る
    玄箱のFlash ROMには簡易Linuxが入っているので、それを使って作業します。
    まず、いったんパーティションを全部削除します。
    # /sbin/mfdisk -e /dev/hda
    
    再度パーティションを作成。作成するシェルスクリプトが用意されているようなので、それを使います。
    # sh /sbin/mkfilesystem.sh
    
    スクリプトの中を見てみると、うまく行ったらマウントまでおこなうようなので、確認してみましょう。
    # mount
    /dev/root on / type auto (rw,errors=remount-ro,errors=remount-ro)
    proc on /proc type proc (rw)
    none on /dev/pts type devpts (rw,gid=5,mode=20)
    /dev/hda3 on /mnt2 type ext3 (rw)
    /dev/hda1 on /mnt type ext3 (rw)
    
    お! 今度はちゃんとマウントされました。df コマンドで容量も確認したところ、ちゃんと /dev/hda3 は584.6GBだと表示されました。(hda1がシステム用で2GB固定、hda2がswap、hda3が残り全部という分け方になっています)
    いささか不安が残らないわけでもないですが、とりあえず気にしないことにして先に進みます。
  5. Debian化キットを導入
    自分でやると大変なので、www.genbako.comで公開されているキットをありがたく使わせていただくことにします。
    http://www.genbako.com/debian-2.6.17.3/debian-sarge-2.6.17.3-kuroBOX-20060702.tgz をダウンロードして玄箱のHDDに置きます。いちどWindowマシンでダウンロードして、Windows機→玄箱はFTPを使うのがラクでしょう。(玄箱はこの状態でもftpdが走ってます)

    追記:http://www.revulo.com/kuro-box/Debian/Install.html で公開されているキットは etch/カーネル2.6.25.1 と新しいのでオススメです。
    /dev/hda3 が /mnt2 にマウントされていて、/mnt2 の下にはいくつかのディレクトリが作られているので、そのうち share というディレクトリにこのtgzファイルを置きます。
    そうしたら、telnetで玄箱に入って、第1パーティションのルート(=/mnt)に展開します。
    # cd /mnt
    # tar zxf /mnt2/share/debian-sarge-2.6.17.3-kuroBOX-20060702.tgz
    
  6. ネットワーク設定
    現在玄箱のIPアドレスはDHCPで決まっていますが、Debian化キットは 192.168.0.100 の固定IPアドレスを使うようになっています。もし変えたければ、 /mnt/etc/network/interfaces を編集します。(Debian化した場合はこのファイルが /etc/network/interfaces になります)
    ついでに下記ファイルも必要があればいじっておきましょう。
    /mnt/etc/hosts
    /mnt/etc/hosts.allow
    /mnt/etc/resolv.conf
    /mnt/etc/hostname
    
  7. 再起動
    さて、ネットワーク設定が完了したら再起動です。が、再起動する前に特別なコマンドを入力します。
    # echo -n 'OKOK' > /dev/fl3
    # reboot
    
    この1行目を入力することで、玄箱が「Flash ROM内の簡易Linux」ではなく「HDD内のLinux」で稼働するようになります。(Flash ROMのLinuxで起動した状態は俗に「EMモード」と呼ばれます。ログインプロンプトに「KURO-BOX-EM」と表示されるからでしょうか)
    再起動中は、POWER LED(4つあるLEDの一番上)が点滅します。これが点灯になったら再起動完了。

Debian化キットの初期設定

さて、ではさっき設定したIPアドレスでtelnetログインしてみます。
ログイン時のID/passは tmp-kun/tmp-kun です。

ログインしたら、何はともあれrootのパスワードを変更しましょう。デフォルトのパスワードは「root」です。
$ su
# passwd

次に、自分用のユーザアカウントを作成します。(tmp-kunのままでいいなら作らなくてもいいですが)
# adduser ユーザ名

アカウントを作成したら一度ログアウトして、いま作ったユーザアカウントでtelnetログインします。
もう使わない tmp-kun は削除しておきましょう。
$ su
# deluser --remove-home tmp-kun

長くなったので今日はここまで。
次は、Debianのアップデートをします。このDebian化キットは sarge(Debian 3.1)で作られていますが、現在のDebianの安定版(stable)は etch(Debian 4.0)なので、etch へのアップグレードもしたいところです。

0 件のコメント:

コメントを投稿