Smoltによるハードウェア利用状況のプロファイル化

 Fedora 7のリリースで傑出していた特徴の1つが、ユーザのハードウェアに関する情報を収集するオプトイン・プログラムSmoltだった。以来、SmoltによってFedora実行システムのスナップショットが公開され、SmoltはFedora以外のディストリビューションにも移植されつつある。機能追加が急速に進むなか、Smoltにはこれまでにない豊富な情報の提供や、品質保証、技術サポート、支援運動の促進が期待されており、その対象はFedoraだけでなくGNU/Linux全般に及んでいる。

 Smoltが対象とする範囲は、開発途上で急速に拡大した。McGrath氏がその基本的なアイデアを得たのは昨年の1月、日頃の業務でハードウェアのインベントリ管理システムの必要性を感じたときだった。やがてMcGrath氏は、そうした情報がGNU/Linuxの品質保証の活動に役立つことにも気付いた。

 「当時はFedoraだけを対象にする予定だった。しかし、ほかのオペレーティングシステムを対象に加えるのもそれほど難しくはなさそうだった。そこで、調べたところ、わずか2行のパッチによってSUSEでも動作することがわかった」(McGrath氏)。以後、McGrath氏のもとには、Debian、Ubuntu、Mandrivaなど、ほかのディストリビューションへのSmoltの移植に関心を寄せる開発者たちから連絡が入るようになったという。

 Smoltが披露されてすぐに明らかになったもう1つの懸念事項が、プライバシー侵害の恐れだった。そうした批判を早々に受けた結果、「Smoltを人々に使わせないようにするとともに、確実にプライバシーが守られるようにするためのあらゆる措置を十分に講じることができた」とMcGrath氏は語る。SmoltはFedora 7の初回ブート時のウィザードで実行される。それ以降も実行は可能だが、その場合はユーザが自力でハードウェア情報を送信しなければならない。プライバシーの保護をさらに徹底するために、プロファイルは名前ではなくランダムに生成される識別子を使って保存される。ただし、設定上の問題についてFedoraメンバーに相談するときには、ユーザ側でプライバシー保護を解くことができる。また、ハードウェアのIDやインターネットのアドレスはデータベースに一切保存されないため、「我々がWebのログや同じマシン上のデータベース情報を保存することはない」とMcGrath氏は述べる。「まさしく匿名のデータ送信であり、なおかつ気懸かりなデータは常に送信されないようにすることができる」

 こうした対策により、Smoltに関する当初の懸念のほとんどは払拭されたように見える。7月末時点で、Smoltプロジェクトはほぼ90,000のシステムからデータ収集を行っている。それぞれの識別子を知っていれば個々のプロファイルを閲覧することも可能だが、最も興味をそそられるのはFedoraを実行している全システムのプロファイル情報である。

 たとえば、公開されている統計情報によると、Fedoraシステムで稼働しているCPUはPentium IIIまたはそれ相当が78%、x86_64系が20%となっている。利用言語はUS Englishが67%と大半を占め、次点となった日本語の6.1%との間には大きな開きがある。また、Fedora実行システムのRAM容量は、512MB未満が34%、512MB~1GBが37%、2GB以上が24%となっている。これほど具体的な情報を提供できる取り組みは、どんなパッケージをユーザがダウンロードしているかを記録するDebianのpopularity-contestや、GIMPの使われ方に関するデータを収集するための最近発表されたIngimpなど、ひと握りしか存在しない。

収集情報の利用

 McGrath氏は、Smoltで収集した情報にはいくつかの使い途があると考えている。非常に基本的なレベルでは、Smoltの取り組みに参加しているディストリビューションの品質保証レベルの向上に利用できる。Fedoraについては、「すでにBugzillaのレポートで“ハイバネーションに関する問題が起きている。Smoltのプロファイルは以下のとおり”といった文面を見かけたことがある」とMcGrath氏は言う。求めている情報が正確にわかり、テスト用に同じマシンを見つけることが可能になるため、こうしたレポートは開発者の役に立つ。また、Smoltによってレスポンス時間を短縮することもできる。開発者は、それぞれの依頼に個別に回答する代わりに、より詳しい情報を同様のプロファイルを通じてユーザに提示できるからだ。最終的には、Smoltのプロファイルごとに技術サポートの文書を用意することも可能だ。そうすれば、ユーザはプロファイルを参照して、特定のハードウェア構成における問題の解決に必要な手順のリストを見つけ出せるようになる。

 同様に、記録された情報はディストリビューションの新たなリリースの計画にも役立つ。たとえば、対象システムの3分の2でしかAmerican Englishが利用されていないことを示す、言語に関して収集されてきた統計情報に言及して、McGrath氏は次のように話す。「これには感心させられた。しかも、他の言語の使用率が向上するにつれ、この数字は緩やかに減少し続けている」。McGrath氏にとって、この統計値は「あらゆるものをきっちりと翻訳する必要性」を示す証拠になっている。

 ほぼ同じような形で、CPU処理速度やRAMに関する統計情報も、開発者が新しいリリースの最小システム要件を設定するうえで有用だ。推測ではなく、確かな統計情報を使って、自分たちの成果がどんなハードウェアで実行されるのかを知ることができる。万一、システム要件を高くすることになっても、現行ユーザのうち何割くらいが新しいリリースを使えなくなるかがわかる。

 将来的には、メーカーによるGNU/Linuxのサポート拡大を促進するためにもSmoltが使えるだろう。「たとえば、我々は“Nvidiaよ、見たまえ。GNU/Linuxユーザは皆、Nvidia製カードを十分に活用できていない。それは、貴社がドライバをオープンソース化しようとしないからだ”と言えるようになる」とMcGrath氏は語る。Smoltに参加するユーザとディストリビューションが増えるほど、こうした支援活動が効果的に行えるようになるのだ。

今後の計画

 Smoltの開発は、今なお急ピッチで進んでいる。この先、McGrath氏はSmoltが収集する情報をリファインしたいと望んでいる。収集した統計情報の一部 ― システムのスピーカーは内蔵のものか追加されたものか、システムはアップグレード済みか、ディストリビューション実行中のサスペンドやハイバネーションが可能かどうかなど ― について、彼は削除を検討している。

 彼が加えようとしているその他の改良点としては、与えられたシステムがどれほど良好に動作しているかを確認できるプロファイルの評価システム、Webページによって可能になる統計情報のクエリツール、そしてなかでも、ディストリビューションごとに情報をフィルタリングする機能 ― 既存のハードウェアに最も適したディストリビューションをユーザが判断するのを支援できる機能 ― が挙げられる。

 だが、当面の優先事項はFedora以外のディストリビューションにおけるSmoltの利用を促進することだ。「それぞれのコミュニティにいる人々の手でぜひSmoltをほかのディストリビューション向けにパッケージ化してもらいたい。また、そうした人々と協力して、ほかのディストリビューションの開発者にも興味を持ってもらえるような要素を見つけ出したいと考えている」(McGrath氏)

Bruce Byfieldは、Linux.comとIT Manager’s Journalに定期的に寄稿しているコンピュータジャーナリスト。

Linux.com 原文