DocoMomoは、512MB 程度以上のあるix86マシンで512MB程度以上のUSBメモリからGNU/Linuxを 起動できるようにするツールです。DocoMomoを作成する環境と同様の、 使い慣れた環境をUSBメモリ上に構築できます。
手元では、xfce4の上で、rxvtをひとつとfirefoxを起動してscim-skkを 使った状態で、メインメモリを480MB強使用しました。xfce4に同梱の Terminalを使うと必要なメモリの量は増えます。swapはありません。
バージョン0.13.0では、USBメモリに格納されたファイルは、合計450MB 強でした。
一般的なLinuxの起動プロセスの概要を、 linux-boot-process.jaに記し ました。
どこでもモモンガでは、デフォルトでは、runlevel 4に起動し、ユーザー docomomoとしてstartxし、xfceが起動するようになっています。この環 境からログアウトした後には、runlevel 3の場合と同様、loginプロンプ トからのログインと、startxなどのコマンドを使ったXの起動ができます。
新しいマシンでXがうまく起動しない場合には、リブートして、grubのメ ニューから矢印キーで2つ目の「DocoMomo on a new hardware」を選んで リターンを押してください。Xなどが適切に再設定されるはずです。
自動的にログインしないようにするには、runlevel 3に起動してくださ い。デフォルトでrunlevel 3に起動するようにするには、USBメモリ内の /boot/grub/grub.confを編集するか、どこでもモモンガを起動してから /etc/inittabを編集してください。grubのメニューからeを押して一時的 にデフォルトではないrunlevelに起動することもできます。runlevel 5 に起動するには、必要なパッケージが足りない可能性が大きいです。
システム全体のタイムゾーンはUTCになります。常用するユーザーのタイ ムゾーンは、~/.bashrcに、例えば、
export TZ=Japan
などという行を追加して設定してください。
起動時にネットワークにつながっていた場合、時計はNTPサーバ(pool.ntp.org) に同期されます。ネットワークにつながっていなかった場合は、 DocoMomoの走っているマシンの時計(RTC)の時刻がそのままUTCの時刻と して使われます。
DocoMomoの環境をUSBメモリに構築するのに必要なファイルは、 <URL:http://docomomo.sourceforge.jp/>からダウンロードできます。 .tar.gzの拡張子があるもののうち最新のものをダウンロードしてくださ い。ファイルの内容が正しいかどうかは、.md5sumの拡張子のファイルを ダウンロードして、例えば下記のように確かめることができます。
md5sum -c docomomo-0.9.28-linux-installer-080123.md5sum
Linuxに似た環境でファイルを解凍し、インストール先となるUSBメモリ をマシンに挿し、下記のようにしてブートローダとブート後に必要なフ ァイルをUSBメモリにインストールしてください。
su make install
USBメモリのファイルシステムはvfatなどでかまいません。
DocoMomoを使いたいマシンのBIOSを設定してUSBメモリから起動するよう にして、上記でインストールしたUSBメモリを挿し、電源を入れることで DocoMomoが起動するはずです。
DocoMomoのインストーラに含まれるプログラムのソースコードは、 <URL:http://docomomo.sourceforge.jp/>以下からダウンロードする ことができます。
DocoMomoの作成には下記のRPMパッケージがインストールされて 適切に設定されている環境が必要です。
DocoMomoの作成の際には、1.5GB程度のファイルが生成されます。
まずは<URL:http://zunda.freeshell.org/docomomo/dist/>から最新 版のtar ballをダウンロードしてください。
各バージョンの変更点については、ChangeLog をご覧ください。
どこでもモモンガの作成手順は、Makefileに記されています。それぞれ のターゲットで、下記の順に作業を進めていきいます。
ここまでで、どこでもモモンガのrunlevel 3で再現されるツリーが構築 されたことになります。次に、このツリーからいくつかのファイルシス テムを作ります。
stripの際には、BFDがinternal errorを出す場合があります。その場合、 エラーの出たstripコマンドに-vオプションをつけてmakeしなおし、エラー の出た時に読んでいたファイルを、conf以下のお使いのリリースのディ レクトリの下の、no-strip.list に、カレントディレクトリからの相対 パス(最初のドットを含む)として、加えてください。次回からはそのフ ァイルはstripしないようになります。
まず、準備をします。
準備ができたら、下記のようにUSBメモリに入れるディレクトリツリーを 構築し、initrdイメージとその他のイメージを作成して、USBメモリにコ ピーします。
Makefile.develはレポジトリの操作やWWWサーバへのどこでもモモンガの 公開のためのターゲットを提供します。
DocoMomoの作成には下記のRPMパッケージがインストールされて 適切に設定されている環境が必要です。
SouceForge.jpのトラッキング にお願いします。
このプロジェクトの構想段階から、おくじさん にいくつかの有用なツッコミをいただきました。USBメモリからのOSの起 動を試したり、initrdなどのファイルの構成を考える際に参考になりま した。ありがとうございました。
ソースコードやインストーラパッケージのサーバを提供してくださる SourceForge.jpに感謝します。
また、USBメモリからも問題なくOSを起動してくれる GNU GRUB の開発者のみなさま、その他有用なソフトウェアの開発者のみなさまに 感謝します。
Copyright (C) 2006 zunda <zunda at freeshell.org> unless otherwise stated in the COPYING file.
Permission is granted for copying, modification, distribution, and distribution of modified versions of this work under the terms of GPL version 2 or later. Read the GPL file or GPL3 file for more details.