(日々の記録)デジタルオシロを買った。(火)BeagleBoardにUbuntu9.04をインストールする日経Linuxの記事があてにならない(6/21/09)今月(7月号)の日経Linuxは、電源プラグに差すだけで動くLinuxサーバーや、BeagleBoardの新版(RevC)の紹介という組み込み系の特集である。LinuxをBeagleBoardにインストールする記事は、当研究所がこれからやろうとしていたこととぴったり一致する。BeagleBoardは余技にすると言ったばかりなのだが、タイミングが良すぎた。これは買ってくるしかない。それに、この前のAngstromのインストールでは、knoppixで誤魔化したけれど、そろそろPCにもLinuxを入れておきたい。各種の最新Ubuntuディストリビューションの入ったDVDも付録についているというので、早速、購入してきた。通読すると、BeagleBoardへのUbuntu9.04のインストールは、SDカードのフォーマットから、最後の日本語フォントのインストールまで事細かに解説してある。BeagleBoardの当面の目標は日本語化だったが、Angstromの日本語化はそう簡単ではない(動かしたのはデモ版)。これならすぐ日本語が見られそうだと気楽に作業を始めた。ところが、これが一筋縄では行かなかった。雑誌の記事の通りやっても動かないのである。あとでわかったことだが、この雑誌の記事にはミスが多いのだそうだ。普通は、印刷された、しかも大手の出版社の活字情報は、Webの情報より信頼度が高いと思うのが常識なのだが、これが違ったのである。結果としては、インストールは成功し、BeagleBoardのブラウザーで日本語を表示できるところまで進んだ。この雑誌の記事の通りにやって動かないで困っている人がまだ沢山いると思うので、とりあえず経過だけでも紹介しておくことにする。はまったのが、パーティションを切る、GPartedというソフトのインストールである。installを入れても一瞬のうちにエラーで帰ってくる。こちらは最近のLinux情勢にうとい。Debian関係は全く経験がない。updateをしないで、ない、ないと騒いでいた。これはGPartedでなく、gpartedで探したら一発で見つかる。やれやれUNIX関係は、大文字、小文字に厳密なので、こんなことではまる。コマンドは正確に記述して欲しい。gpartedしかもページを沢山使って説明したGPartedのやっていることは、単に、SDカードの残りの部分をext3で定義し、ここと頭の部分をそれぞれフォーマットするだけのためだった。これくらいなら、何故、fdiskとmkfsでやってしまわない。記事を良く読まなかった自分が悪いことを棚に上げて無駄な作業手順をやらされて腹の虫が納まらない。付録DVDからrootfsイメージの展開である。記事の通りtarコマンドを入れる。おやあ、このコマンドのオペランドの順がおかしいなあ、最近は順序が変わったのかしら。シンタックスがおかしいと、はねられる。/mnt/何と、tarコマンドのオプションが入出力引数の中間に入っているまま印刷記事になっている。いうコマンド行は校正の時には真っ先に、入念にしなければならないところである。してこんな間違いが起きるのだろう。このtarの前には、sudoがない。この程度なら少しUNIXを知っている人ならすぐわかる間違いだが、次の不具合はもう少し深刻である。入れなおしたtarが全く展開できていない。エラーメッセージを見てわかった。SDカードのルートディレクトリは、root以外の書き込みを許可していない。雑誌の記述では、この先のファイルの作成ではroot権限になれと書いてあるが、tarはsudoで動かしている。ファイルの生成は微妙で、誰が作ったかでパーミッションが変るので、こういう作業はユーザーはrootでやるのが間違いがない。管理者権限があってもrootでないと失敗するときがあるのだ。よってrootのパスワードの設定が出来ることがわかった。Ubuntuでは最初、rootが設定されていない)。/(SDカード)で、パーミッションを強引に変えて(これはsudoでも出来る)、tarを入力する。正規には、ここでrootになってインストールしなければならない。何とか順調にtarボールが展開され始めた。おや、最後の方で少しエラーが出た。うーむ、rootではないからな。いくつかのディレクトリ生成やリンクが失敗に終わっている。だめもとで出来上がったカーネルを立ち上げてみる。いや大丈夫なようだ、順調にブートされていく。いや、やっぱりだめだ。途中で止まってしまった。consoleのメッセージで止まっている。tarの展開のときのエラーはディバイス関係のディレクトリでのエラーだった。このあたりでひっかかっているのだろう。やれやれ、アマチュアのWebの記事を参考に入れたAngstromは一発で動いたが、雑誌の記事を見て、しかもミスを回避しながらのインストールは失敗に終わった。沢山の人がこの記事の通りやって動かない動かないと悩んでいることだろう。いちどrootからやってみよう。それに雑誌のrootfsイメージは信用がならないので、正規のサイトから落としたほうが良いかもしれない。BeagleBoardでやっと日本語が出る(6/22/09)翌日、仕事から帰って、もういちどSDカードをフォーマットし直し、正式にrootになってtarで展開する。雑誌のDVDから展開する。うむ、全くエラーもなく、きれいにrootfsはインストールされた。omap3のカーネルイメージも順調に展開された。新しく入れたUbuntuのターミナルでcuコマンド(いや、なつかしい。接続終了が、~.という変なコマンド)でシリアル端末を立ち上げる。おやあ、最初のブートローダーがリセットしてしまう。あ、USBのハブの電源を入れていなかった。よしよし、Linuxのブートが始まった。おお、PCのUbuntuと全く同じログイン画面が出た。ログインでまたはまる。rootでは入れない。これは雑誌にちゃんと書いてあった。ubuntuで入るのだ。Angstromと同じようなGUI画面があらわれる。ロケールが日本語になっているので字化けしている。日本語フォントが入っていないからだ。これは自分でいれなければならない。最後の難関、日本語化キットのインストールである。BeagleBoardがネットワークにつながっていないと出来ない。Net関係は一発で通ったようだ。インストールコマンドの入力だ。何い、こんなコマンドを入れるのか。