2006-06-21 (Wednesday) [長年日記]
■ Debian Etch on Mac mini
Debian Etch が Mac mini で動いたよ!やったね!!
しかし,さしあたっては問題点がいくつかある...
USBハードディスクからの自動起動
当然だが,起動時に何もしなければMac OS Xが起動する.alt / options キーを押しながら起動しなければならない. デフォルトでUSBハードディスクのLinuxが起動するようにできないと うっかり勝手に再起動するような事態になったときに大変だ.
まぁ,そんなことは滅多にない,というか,今までの運用では一度もないので,問題の重要度としては低い.
USB接続のネットワークカードの利用
現状では無線LANはLinuxのドライバが存在しないため,使えない. 有線のGbEthはドライバを含んだカーネルパッケージが存在しているので, これをdpkg -i すれば上がる.
無線LANが使えないのは許せる. しかし,NICがふたつ以上ないとルーティングをさせたい場合に困る. そこで,ルーティングするにはUSBのNICなどを増設することになるが,このドライバはカーネルパッケージには含まれていない.
うーむ,カーネルの再構築をする必要がありそうだ.
バックアップ先のディスク
今のところ解決策が見つかっていない問題がこれ. 本体の内蔵のディスクをLinuxから読み書きできれば問題なかったが,本体に内蔵されたディスクがHFS+でジャーナリングが有効なので,Linuxでは読み書きできないらしい.
ディクスを分割するのは元に戻す自信がないのでやりたくない.
ディスクをもう一台外付けするのもなんか違うよな. ってか,それをやると本体よりもディスクが占有する空間がの方が大きくなるよ...
ディザスタリカバリのことも考えて,リモートのディスクにrsyncでもしてやるかね.できれば,bontmiaを使いたいのだけれど,バックアップ先にリモートを指定できないみたいなんだよね...
これら(特に最後の項目)が解決できたら現行のサービスをリストアップして,Mac mini側にどんどん移行させたい.
実は昨日のNFSの話題はMac miniでDebian Etchが動いてからの話なんだよね. 現在はすでに /home を NFS で共有してます.
■ ファームウェアアップデートする
Debian Etch をインストールして起動する方法をメモしておこう.
まずは,ファームウェアをアップデートする. 古いファームウェアだとEFIに対応していないブータブルなディスクから 起動できない. Mac mini(early 2006) Firmware Update 1.0.1 以降なら大丈夫のようだ.
■ Mac OS XでLinuxを起動させる
次にUSBのハードディスクにブートローダを導入する.
まず,ブートローダをインストールするUSBのハードディスクを接続し, ディスクユーティリティ*1を起動する. 接続したディスクを選択して,パーティションのタブに移動する. そして,ボリュームの方式を3パーティションにし,以下のように設定する.
| 名前 | フォーマット | サイズ |
| boot | Mac OS 拡張 | 1 GB |
| swap | Mac OS 拡張 | 2 GB |
| root | Mac OS 拡張 | 74 GB |
フォーマットはあとで変更するので,boot以外は細かいことを考えなくてよい. ただし,bootはMac OS 拡張(ジャーナリング)などにすると,Linuxから読み書きできないので注意すること
次に, LinuxBoot7.dmg.zip を砕いて,すべてのファイルを/Volumes/boot にコピーし, ターミナルから以下のコマンドを実行し,起動ディスクであることを登録する.
$ cd /Volumes/boot $ sudo bless --folder . --file e.efi --labelfile linux.volicon
さらに,elilo.confを編集し, imacfb:i17 を imacfb:mini に変更し, root=/dev/sda7 を root=/dev/sdb3 と変更する. これでLinuxがeliloで起動できるようになったはず. 心配なら,default=linuxをdefault=initrdに変更して起動してみるとよい.
ついでに /Volumes/boot に kernel-image-2.6.16.5-imac_20060414b_i386.deb をコピーしておくと専用のカーネルパッケージをインストールしやすい.
*1 アプリケーション - ユーティリティ - ディスクユーティリティ
■ Debian Etch beta2 のインストール
基本的な手順は普通のインストールと同じだった.
Debianのインストーラから i386用のnetinst CDイメージ(debian-testing-i386-netinst.iso)を ダウンロードして,CD-Rに焼く. Mac OS X ではディスクユーティリティ*1で焼ける. 焼いたCDを挿入し,Cを押しながら起動するとCDから起動できる.ワイヤレスキーボードでも平気だった.
インストールで注意することとしては,途中で/dev/sdb2をスワップ領域に変更することと,/dev/sdb3にext3ファイルシステムを作成すること. ネットワークの設定とブートローダのインストールはしないようにする.
完了したら,alt / option キーを押しながら再起動し,USBのハードディスクからEFI BOOTすれば Debian Etch が起動するぞ! カーネルパッケージをインストールして,再起動すればネットワークも使えるようになる.
# mkdir /mnt/tmp # mount -t hfsplus /dev/sdb1 /mnt/tmp # dpkg -i kernel-image-2.6.16.5-imac_20060414b_i386.deb # reboot
再起動後には eth0 が生えている.
*1 アプリケーション - ユーティリティ - ディスクユーティリティ
■ Etch の apt-line
日本ならこのようなapt-lineでいいみたい.
deb http://ftp.jp.debian.org/debian etch main contrib non-free deb-src http://ftp.jp.debian.org/debian etch main contrib non-free deb http://security.debian.org/ etch/updates main deb-src http://security.debian.org/ etch/updates main
apt-get update; apt-get upgrade; apt-get dist-upgrade; かましてごりごりパッケージをアップデートする.
らくちん.








