ホームページ玄箱をMacで>その1・Debian Linux導入編

その1・Debian Linux導入編

目次
 目的と経緯


 まずは素直に組み上げる

 とりあえず初期不良チェックと感触を掴むため、標準のセットアップを行いました。
 なお、玄箱のインストーラはWindowsのみ対応の為、Macからのセットアップはできません。

 参考サイト(1):槻ノ木隆のPC実験室

 セットアップ完了後、試しにウチで公開しているソフト(非圧縮状態)をMac OS Xからコピーしようとしたら、エラーでコピーできないファイルがいくつかありました。(「項目名が長過ぎるか無効な文字…」とかいうメッセージが出ます。)
 勿論、文字数は10文字程度ですし、特殊な文字も使っていません。
 これでは全く使い物になりませんが、あらかじめ予想された事態なので、予定どおりカスタマイズのステップに進むことにしました。


 Debian GNU/Linux 3.0 (woody)化

 Linuxにはいくつかのディストリビューションがあり、玄箱上で動作実績のあるものとしては、DebianとVineがあるようです。(他にもあるかもしれませんが、未調査)
 今回は、収集できた情報がDebianの方が多かったため、こちらでいくことにしました。
 また、インストールに際しては、以下のサイトで配付/解説されているキットにお世話になりました。

 参考サイト(2):玄箱うぉううぉう♪
 参考サイト(3):【玄箱】簡単 Debian Box 化の技

 インストール手順は以下のサイトに従いました。インストール自体はすんなりといく筈です。

 参考サイト(6):mobilepcclub: MyServer アーカイブ(February 12, 2005の項)

 なお、ウチではローカルネットワークの設定がキット標準とは異なっていたため、以下のファイルで192.168.0.*となっているところを192.168.1.*に変更しました。

 (1) /etc/hosts
127.0.0.1 localhost
192.168.0.100 KURO-BOX
 (2) /etc/hosts.allow
ALL : 192.168.0.0/255.255.255.0
ALL : 127.0.0.1
 (3) /etc/resolv.conf
search
nameserver 192.168.0.1
※必要ならプロバイダから提供されているネームサーバアドレスを追加する。
 (4) /etc/network/interfaces
address 192.168.0.100
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
 設定&再起動後、telnetで繋がることを確認しました。


 Debian GNU/Linux 3.1 (sarge)化

 このステップは必要なのかよく分かりませんが、とりあえず最新の方がよかろうという安直な理由(笑)で導入しました。
 一度Debian化が済むと、その後のアップグレードやパッケージの追加はネットワーク経由で行うことができるようになります。
 そのため、ここから後のステップはMacからでも行えます。(ウチもMacでやりました。Mac OS X標準の「ターミナル」が使えます。)
 以下のサイトにとても詳しく記されていますので、そのとおりに行います。

 参考サイト(2):玄箱 Debianサーバ構築メモ(「Sargeへアップグレード」の項)

 ただし、注意点として、  必要であれば、Sambaもインストールしておきます。(その他のパッケージはお好みで。)
 SambaはWindowsマシンとデータのやり取りをする場合に必要になります。Macしか繋がないのであれば不要です。
 Sambaをインストールした場合、smb.confの[global]のunix charsetは「EUC-JP」ではなく、「UTF-8」としておきます。
(理由についてはnetatalkの導入を参照下さい。)
 また、ユーザ(パスワード)の設定も必要です。
 以下のとおり設定します。(ユーザ名がkurobako、パスワードがkuropassの場合。)

# smbpasswd -a kurobako
 New SMB password:kuropass
 Retype new SMB password:kuropass

 日本語環境の構築

 一般に日本語環境といえば、Debian自体の日本語化のことを指しますが、ここではMac OS X, Mac OS 8/9, Windows上で相互に日本語が通るか、という点まで含んで考えます。

 インストール自体は参考サイト(2)の「日本語環境構築 」のとおりで特に問題はありませんが、上述の観点からロケールにはUNIXで標準的なEUCではなく、UTF-8を使うことにしました。
(理由についてはnetatalkの導入を参照下さい。)

 なので「Configuring locales」画面では「ja_JP.UTF-8 UTF-8」を選択します。
 あとは .bashrcの設定を変更します。
 また、ターミナルの「文字セットエンコーディング」の設定がUTF-8になっていることを確認しておきます。


 netatalkの導入

 さて、いよいよキモ(笑)です。
 まずは、netatalk(の特に文字化け)に対する理解を深めるため、以下のサイトをご一読下さい。大変詳しく解説されています。

 参考サイト(7):netatalk2 & samba3

 上記サイトを参考にさせて頂いた結果、netatalkとsambaはUTF-8とするのが最も文字化けが少なそうなので、Debian側のロケールも含めて、文字コードは全てUTF-8で統一することにしました。

 インストールは他のパッケージと同じように、
# aptitude update
# aptitude install netatalk
とやれば、とりあえずインストールはできます。
注)とりあえず、というのは、Debianのパッケージには「cjkパッチ」が含まれていないようで、日本語の利用には制限がつきます。制限を緩和するためには、自分でビルドするしかなさそうですが、当面は運用でなんとかなりそうなので、パッケージをそのまま利用することとしました。
 設定も参考サイト(7)のとおりでよいのですが、(cjkパッチを適用していないため)「MAC_JAPANESE」となっている箇所は「Shift_JIS」にしておかないと、あとで玄箱にアクセスしようとした時にエラーになります。また、「EUC-JP」「EUCJP-MS」となっている箇所は全て「UTF-8」とします。

 以上で、ファイルのコピーができる環境が出来上がりました。


 実験

 参考サイト(7):netatalk2 & samba3 では、実験用のファイル(ファイル共有テストキット)をダウンロードできるようになっているので、これを使わせて頂いて、コピーの実験をしてみました。

 Mac OS X 10.4.2 ⇒ 玄箱(netatalk)
 Mac OS X 10.4.2 ⇒ 玄箱 ⇒ Mac OS 9.0.4(netatalk)
 Mac OS X 10.4.2 ⇒ 玄箱 (samba)
 Mac OS X 10.4.2 ⇒ 玄箱 ⇒ Windows XP Pro SP2(samba)
 純正環境でコピーに失敗したウチのソフトは、正常にコピーできました。
 以上を総合すると、(ウチが想定している)実用レベルでは特に問題ないように思われます。
 なお、実験は始まったばかりなので、何か成果(または訂正)がありましたら、今後も追加していきたいと思っています。


 玄箱を使い易くする

 <セレクタに「KURO-BOX」を表示する>

 Debian標準では、IPアドレスを打ち込まなければ玄箱を選択できませんが、これをリストから選べるようにします。

 /etc/init.d/rcS の最後に以下を追加

ifconfig eth0 allmulti

 <共有領域をマウントできるようにする>

 netatalk標準では、ユーザのHome Directoryをマウントの対象としています。
 Home Directoryは、hda1パーティション(主にシステム領域。2GB)内にあるため、これではいくら大容量ディスクを導入しても有効利用できません。
 そこで、本来のデータ領域(hda3パーティション)をマウントできるようにします。
 hda3パーティションには、mntの下にshareとshare-macがあります。(この状態は、純正インストーラでのセットアップ時に設定されています。)
 ここではshareとshare-macの両方をマウント対象とします。

 /etc/netatalk/AppleVolums.default の最後に以下を追加

/mnt/share/ "Share"
/mnt/share-mac/ "Share-Mac"

 トラブルシューティング

 <純正インストーラがインストールに失敗する>

 ファイアウォールを無効にする。

 有効になっていると、フォーマットにえらく時間がかかった挙げ句、失敗のダイアログが表示されます。
 普段からWindowsを使い慣れている方には釈迦に説法でしょうが、私は失敗してようやく気付きました。(インストール前にファイアウォールについての警告メッセージが出ますが、特に気に止めませんでした。)


 <Debian化したらtelnetで接続できない>

 ウチでも見事にはまりました(笑)。回避方法は、

 参考サイト(6):mobilepcclub: MyServer アーカイブ(February 12, 2005の項)

に詳しいですが、ウチの場合はローカルネットワークの設定がキット標準の192.168.0.*ではなく、192.168.1.*だったことが原因でした。
(この部分の説明が少ないのは、情報を公開している人の多くがキット標準の設定ですんなり動いているからでしょうか?)

 なお、どうしても接続できない場合はDHCP接続のキットもありますので、これを使う手もあります。
 ただし、DHCP接続だとIPアドレスが一意に特定できないことになるため、それはそれで別の問題が起きる可能性があります。(動かない原因を切り分けるために、一時的に入れて様子を見る、といった使い方には有効かもしれません。)
 DHCP接続のキットは、以下のサイトで提供されています。

 参考サイト(4):玄箱で遊ぼう!


 <最初から再インストールしたい>

 失敗したら、一度HDDを取り出して別のPCに接続して初期化云々という情報もありますが、少なくともウチではその必要はありませんでした。(失敗の程度にもよるのかもしれませんが…)
 また、以下の方法では、再インストール前に/mnt/share-mac/に作成したデータはそのまま残っていました。(勿論、保証はできませんので、重要なデータは事前にバックアップをお取り下さい。)
  1. 玄箱、Windows PCをルータ接続(または直結)し、電源を入れておきます。
  2. 玄箱背面のリセットスイッチを長押し(3〜10秒程度)します。
  3. 玄箱の電源が切れます。
  4. (暫く待って)再度電源を入れます。玄箱はEMモードで起動します。
  5. Windows PC上で純正インストーラを起動します。
  6. 「KURO-BOX-EM」が見つかる筈です。見つかったらインストールします。

 <AirMac経由で玄箱に接続できない>

 時々発生します。(特に、telnet(ssh)接続)
 再現性に乏しいあたりが悩ましいところです。(スリープ明けに発生し易いとか、暫く放っておくと切れる確率が高いとかありますが、これとて常にという訳ではありません。)
 玄箱オフィシャルBBSでも時々話題に出ていることから、AirMac固有というより無線LAN共通の問題なのかもしれません。
 とりあえず、netatalk接続、samba接続など、あれこれ試しているうちに繋がることが多いため、現状はそれで凌いでいます。
 この件で、なにか情報をお持ちの方がいらっしゃいましたら、ご教授いただければ幸いです。

 「その1a・メール設定編」へ続く


 お世話になったサイト

 貴重な情報をご提供頂いている皆様に、お礼申し上げます。(以下、順不同)

 参考サイト(1):槻ノ木隆のPC実験室
 参考サイト(2):玄箱うぉううぉう♪
 参考サイト(3):【玄箱】簡単 Debian Box 化の技
 参考サイト(4):玄箱で遊ぼう!
 参考サイト(5):玄箱 Debianサーバ構築メモ
 参考サイト(6):mobilepcclub: MyServer アーカイブ(February 12, 2005の項)
 参考サイト(7):netatalk2 & samba3


 更新履歴

 2007.04.04 次章へのリンクを追加。
 2005.09.07 実験の「Mac OS X 10.4.2 ⇒ 玄箱 (samba)」を一部訂正。
 2005.08.15 新規作成


[Home]  [MacSoft]  [Donation]  [History]