« 久々にたるやで飲み〜 | Main | デカァァァァァいッ。説明不要!! »

2010.11.28

玄箱HGのLenny化とコンパクトフラッシュ起動対応

玄箱HGの起動不良で自宅内DHCP、DNSを休止させていたのですが、名前解決できないと不便、ということで復活させてみました。
今回は完全にDHCP/DNSアプライアンス化を想定して起動ディスクをフラッシュメモリベースに変更してみます。
ついでにetchのサポートも終わっているのでlennyへの更新も合わせて実施します。

準備するものは以下の3つです。

Amazon_20101127

  • 玄人志向 CF to 2.5型IDE-HDD互換コネクタ変換ボード KRHK-CF2.5IDE(amazon)
  • SANWA SUPPLY TK-AD40N 2.5インチHDDアダプタ (amazon)
  • Transcend 8GBコンパクトフラッシュカード TS8GCF133 (amazon)

Kurobox_cf_lenny_20101127 PCからIDE互換で起動可能なものが必要なため、とりあえずレビューで実績があったものを漁ってみました。
玄箱はハードディスクを金属製フレームに固定しますが、コネクタ変換ボードがフレームに接触してショートしないようにする必要があります。
ビニールテープで絶縁を考えたのですが、eneloopの単3-8本入りのケースの外枠がうまく使えそうだったので、これを転用することにしました。

lennyのインストール以降はこの辺を見ながら進めました。
まずは玄箱をEMモードで起動し、telnetでアクセスするまでです。

  1. 玄箱HGのファームウェアをダウンロードする
  2. kurog101.zipを解凍して中のimage.zipをさらに解凍し、tmpimage.tgzを取得する
  3. 玄箱HGをLANに接続し電源を入れる
  4. kurog101.zip内のKuroBoxSetup.exe を起動し玄箱HGのIPアドレスを調べる
  5. 調べたIPアドレスにtelnetでアクセスする
  6. ユーザ名root、パスワードkuroadminでアクセスする

この後、lennyをインストールするためにコンパクトフラッシュを4パーティションに分割します。
この辺りを見ながら、(1)ブート用の2GB、(2)スワップ用の256MB、(3)Lennyカーネル本体用の4GB、(4)Lennyの第2パーティションの512MBのパーティションを作成します。

  1. mfdisk -e /dev/hdaを実行しパーティションを消去する
  2. mfdisk -c /dev/hdaを実行しパーティションのスライスを行う
  3. nキーを押した後、pキーを押し新規プライマリパーティションを作成する
  4. パーティション番号は1を選ぶ
  5. 開始シリンダはデフォルト値を指定する
  6. 終了シリンダに+2048Mを指定し2GBのパーティションを作成する
  7. nキーを押した後、pキーを押し新規プライマリパーティションを作成する
  8. パーティション番号は2を選ぶ
  9. 開始シリンダはデフォルト値を指定する
  10. 終了シリンダに+256Mを指定し256MBのパーティションを作成する
  11. tキーを押し第2パーティションのパーティションIDを変更する
  12. パーティション番号は2を選ぶ
  13. パーティションIDは82を選ぶ
  14. nキーを押した後、pキーを押し新規プライマリパーティションを作成する
  15. パーティション番号は3を選ぶ
  16. 開始シリンダはデフォルト値を指定する
  17. 終了シリンダに+4096Mを指定し4GBのパーティションを作成する
  18. nキーを押した後、pキーを押し新規プライマリパーティションを作成する
  19. パーティション番号は4を選ぶ
  20. 開始シリンダはデフォルト値を指定する
  21. 終了シリンダに+512Mを指定し512MBのパーティションを作成する
  22. pキーを押しパーティション一覧を確認する
  23. wキーを押しパーティションを反映する

終わったらファイルシステムを作成し、パーティション1をマウントします。

  1. mkswap /dev/hda2
  2. mke2fs -j /dev/hda1
  3. mke2fs -j /dev/hda3
  4. mke2fs -j /dev/hda4
  5. mount -t ext3 /dev/hda1 /mnt

rootアカウントで玄箱にftpアクセスします。
ftpであらかじめ展開しておいたtmpimage.tgz を/mntにアップロードします。
Windowsのftpコマンドだとこんな感じです。

  1. ftp [玄箱のIPアドレス]
  2. bin
  3. cd /mnt
  4. put tmpimage.tgz

上記完了後にtmpimage.tgzを/mnt直下に展開します。
展開後、以下のコマンドを実行しEMモードを終了し、再起動します。

  1. cd /mnt
  2. tar xvfz tmpimage.tgz
  3. echo -n "OKOK" > /dev/fl3
  4. reboot

再起動後、MontaVista Linuxが起動するので、telnetでアクセスします。
このときのIPアドレスはDHCPサーバ環境上であればEMモードと変わらないIPアドレスでアクセスできるはずです。
この後、Debian Lennyのイメージとパッチをダウンロードし、/tmp ディレクトリにアップロードします。

  1. 玄箱HGでは以下のファイルをダウンロードする
  2. debian-lenny-installer-kuroBOX-20090317.tgz
    debian-lenny-kuroBOX-20090317.tgz
    kuro-bootsel2.20080419.tar.gz
    loader.o
    kernelimage-2.6.25.1-kuroHG.tgz
    modules-2.6.25.1-kuroHG.tgz
  3. 上記ファイルを/tmp にアップロードする

アップロード後、インストールシェルを解凍し実行します。
しばらくするとパーティション3へのファイル展開が完了するため、再起動します。

  1. tar xvfz debian-lenny-installer-kuroBOX-20090317.tgz
  2. sh debian-lenny-installer-kuroHG.sh
  3. reboot

debian Lennyがインストールできた時点でIPアドレスやアカウント情報も変更になります。
ここのIPアドレス設定とアカウント情報を参照し再度telnetでログインします。
ログイン後、コンパクトフラッシュへの書き込み回数を軽減するためにここここを参照して/etc/fstabを編集します。

  1. /dev/hda2 のswapパーティション行をコメントアウトしてスワップを無効化する
  2. 以下の行を追加して /tmp をメモリ上に最大4MB確保する
    tmpfs /tmp tmpfs defaults,size=4m 0 0

fstab編集後再起動すれば、コンパクトフラッシュベースのLenny化が完了です。 後は、ここのlenny情報を参照し、ntpd、dhcpd、bind9のパッケージインストール、設定を行えば玄箱ベースのDNS/DHCPアプライアンス化が完了です。
起動は3分程度とやや時間がかかりますが、ハードディスクを内蔵していないため発熱量も少なく省電力なため、使い倒せそうです。

Diary_20101127_1 Diary_20101127_2
ちなみに、これをやっている間にテレビが消失したんですが、それはまた今度書きます(笑)

Bellavista_20101127_1 Bellavista_20101127_2
今日の昼飯:BELLA VISTA Aランチ

Marugame_20101127_1 Marugame_20101127_2
今日の夕飯:丸亀 カキ入りチャンポンうどん
アサリや野菜などたっぷりの具材にカキを追加したウマーなうどんです。
ちょっと値段が張りますが、たまに食べてみるといいかもしれないですね。

|

« 久々にたるやで飲み〜 | Main | デカァァァァァいッ。説明不要!! »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/27186/50150040

Listed below are links to weblogs that reference 玄箱HGのLenny化とコンパクトフラッシュ起動対応:

« 久々にたるやで飲み〜 | Main | デカァァァァァいッ。説明不要!! »