おがさわらなるひこのオープンソースとかプログラミングとか印刷技術とか

おがさわらなるひこ @naru0ga が技術系で興味を持ったりなんだりしたことをたまーに書くブログです。最近はてなダイアリー放置しすぎて記事書くたびにはてな記法忘れるのではてなブログに移行しました。

クリエイティブ・コモンズ・ライセンス
特に断りがない場合は、本ブログの筆者によるコンテンツは クリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスの下に提供されています。

openSolaris b134 を CD イメージから IBM Thinkpad X31 にインストールしてみた

こないだ小江戸で話そうと思った内容。
結局時間切れでいままで放置してた。

メインマシンの ASUS EeePC S101 の液晶パネルがぶっこわれまして、修理の概算見積もり聞いたら3万円とか。そんなん中古買えるわ! ざけんな! と帰ってきて、こりゃーなんとかせなあかんなと思って、前に openSolaris をインストールしたらご不動様になっていた IBM Thinkpad X31 をトラブルシューティングしてたら上手くいきましたので簡単なご報告。

b134 って?

openSolaris には

  • ふつうの人が使う Release (現状 2009.06、2010.03 に向けて鋭意開発中のはずだけど……3月終わってね?)
  • ちょっと先端を行きたい人のためが使う DEV (ビルド番号で b134 とか呼ばれる)
  • 変態さん(うそです)が使う Nightly

とあるわけですが、b134 というのはこの中の DEV (Developer Build) でございます。
んでこいつがなんで注目かというと、次の Release である 2010.03 はこいつをベースに (バグをつぶしたりして) リリースされることが決まっているからでして。
つまり b134 をいじれば 2010.03 がどうなるかだいたい想像がつきますよと。

我が家の一ヶ月に二日ぐらい電源を入れてもらえないかわいそうなサーバ、HP ML115 G5 は openSolaris b134 が入っているのですが、こいつは 2009.06 からの image-update (Debian 系でいうところの apt-line を書き換えて apt-get update ; apt-get full-upgrade みたいなもん) なので、パッケージ構成などは前のバージョンを若干引き継いでいるようです。

ので、まっさらな環境に ISO イメージから作ってみたくなったわけ。
え、仮想環境でいいじゃないかって? まあそれはいわない約束……。
持ち歩いてあーだこーだしたかったのですよ。

前回のあらすじ

まずは CD 起動して各デバドラ類をチェック。ちゃんと動いてますね。
ということで、とりあえず Debian Sid が入ってた環境にデュアルブートと思ってなにも考えずにつっこみました。

ところが、

  1. Sid は GRUB2 なので、後から Modified GRUB-Legacy*1 をつっこむと、MBR とブート情報が不一致でブートできなくなる
  2. かといって GRUB2 を復元すると、当然 GRUB2 は ZFS Root を認識できないので osol を見つけられません。

ということで、頭きてクリーンインストール
今から考えれば、osol の Modified GRUB-Legacy から GRUB2 をチェーンロードするか、Lenny の GRUB-Legacy でデュアルブート環境をまず作ってから Sid にあげればいいんじゃないかと思うが後の祭り。

まあ Thinkpad X31 はディスクの差し替えが異様に簡単なので、Sid はまたディスク買ってきて、openSUSE 11.3 Mx (x というのは私の重い腰が何時上がるかわからないので) とデュアルブートでもしようかな。お金があればSSDでも買うんだけど。

CDで起動してるので、インストールは何事もなく成功。
さて起動♪ 起動♪ と思った、ら。

……スプラッシュがでてすぐ「ひゅいぃぃぃぃぃぃん」とディスクの回転が止まり、黙って再起動。以下エンドレス。しくしく。

傷心のあまりそのまま放置。

いざ復活

さて前述の通りメインマシンのディスプレイがぶっ壊れる (一応みられるんだけど、ものすごく疲れる) という悲劇にさいなまれたので、まあ ssh とかでつなげば使えるんだけど、当座ふつうに持ち運んで使えるレベルに X31 を復活せねばならん。

のでまずどこで転けてるかチェックするべく GRUB menu で e してスプラッシュ切って、ついでにカーネルオプションの console=graphics も削って起動。

……立ち上がっちゃった (^^;)
何度やっても起動する。あれあれ?
ちなみに無指定だと起動しないのは同じです。

想像するに X31 のメモリが 786MB と超少ないので、ZFS Rootあたりがメモリ足りなくて転けてんじゃね? と勝手な自分結論。
ということで、osol っ子には常識だけど、menu.lst は /boot/grub/menu.lst にあるのはただのサンプルで //grub/menu.lst に実体があるのでこれをちょこちょこと修正して終了。

確かめたこと

まず b134 (= 2010.03) では今までのスプールシステムから CUPS がデフォルトになるということでしたので ps aux | grep cups したらちゃんといました。
え、よい子は -ef じゃないかって? すみませんすっかり Linux っ子で。

$ ps -ef | grep cups
hogehoge  2106  1401   0 12:31:28 pts/1       0:00 grep cups
    root   236     1   0 11:41:07 ?           0:00 /usr/sbin/cupsd -C /etc/cups/

Gutenprint も標準でパッケージに入ったし、これで使用できるプリンタが大幅に増えましたね。

ただし「旧スプーラ用の印刷ツールと CUPS 用の system-config-printer が仲良くメニュー上に同居しており、前者をうっかり起動すると『これは CUPS システム上だとうごかないよー』といわれる」というおちゃめ仕様は直っていません。defect に登録すっかなー。今更だけど。

ATOK使ってみた

openSolaris の売りの一つは extra というリポジトリから Sun が契約したいろんなアプリが入手できることなんですが、その中の一個、ATOKってb134でもちゃんと動くのかなって思ってやってみた。

さくっと動いて感動した。


総括。

  • 2010.03 超期待 (印刷周り)。
  • でもメモリは用意しよう。
  • デュアルブートはちょっと大変かも。

*1:詳しいことは知りませんが、osol は CPU アーキテクチャによって読み込むカーネルモジュールをいじるため、GRUB-Legacy をフォークして手を入れてるとかなんとか