記事を伝聞ではなく,“一次ソース”に当たって書くことは,記者にとって基本中の基本である。同様に,最近改めてプログラムの“一次ソース”であるソースコードを調べる大切さを痛感した。一方で,ソースコードの限界を訴えるユーザーの声を聞き,ドキュメントの重要さについても考えさせられた。

 著者はここしばらく,11月22日に発売した日経Linuxのムック「Linuxセキュア・サーバーの創り方」の編集作業を行っていた。このムックは,「これ1冊で,Linuxサーバーの構築とセキュリティ対策ができる」をテーマに,セキュリティを重視したLinuxサーバーの構築運用方法を分かりやすく解説したものである。

文献の「変更されている」という記述を見落とす

 ムックの一部には,日経Linuxに掲載して読者に好評だった記事を再録した。再録記事については,古くなった情報を更新したり,補足・訂正を反映させたりといった作業を行った。その中には,恥ずかしながら,自分が担当した記事の訂正作業が含まれていた。

 訂正する必要があった記事内容は,比較的新しいLinuxディストリビューションには標準で組み込まれているセキュリティ機能(主メモリー内の特定領域でのプログラム実行を禁止できる「Exec-Shield」)に関してだった。このセキュリティ機能では,パラメータの値を変更することで,機能の有効・無効が設定できる。このパラメータの記述方法に誤りがあった。

 パラメータの記述方法は,セキュリティ機能が公開されたときの告知文に従って記事にしたのだが,その告知文の内容が既に古くなっていた。当該機能は何度かアップグレードされており,パラメータの記述方法も変更されていたのだ。

 実は,その告知文を改めて見たときにようやく認識したのだが,告知文の冒頭には,これは当該機能に関する最初の告知文であり,実際の機能はその後変更されている旨の記述があった。その冒頭の文章に注意を払っていれば間違いに気付いたかもと思うのだが,後の祭りである。

最終的にはソースコードを見て確認

 間違いに気付いたのは,同僚記者が別の記事のためにこのセキュリティ機能を調べていて,Linuxディストリビューションのメーリング・リストで告知文の内容の古さを指摘する記述を見つけたためである。ただし,メーリング・リストの記述だけで,告知文の内容の古さをすぐに断定できたわけではない。告知文とメーリング・リストのどちらの記述が正しいかを判断する必要があった。セキュリティ機能を実際に試して検証できれば確実だが,それも難しかった。

 結局,そのセキュリティ機能を実装するソースコードを見て判断せざるを得なかった。オープンソース・ソフトなので,ソースコードを見ることができ,その情報から,公開当初の告知文の内容が古く,メーリング・リストの記述が正しいと判断した。

 こうしたことから,冒頭で述べたように,一次ソースを調べる大切さを痛感したわけだ。オープンソース・ソフトにとって一次ソースとは,文字通り,ソースコードにほかならない。ソースコードが公開されていない商用ソフトでは,ソフト・ベンダーが一次ソースに相当する場合が多い。そのため,商用ソフトの機能を確認したいときには,ソフト・ベンダーに確認を取れば,多くの場合は事足りる。

 オープンソース・ソフトでは,ソースコードが閲覧可能なだけに,その気になればコード・レベルで機能を確認できるわけだ。これは,オープンソース・ソフトをきちんと使いたい人にとってはとても大事なことである。さらに言えば,コードの閲覧だけ可能な“オープンソース・ソフト”ではなく,オープンソース推進団体であるOSI(Open Source Initiative)定義に沿ったオープンソース・ソフトであれば,ライセンスに従えばコードを改変してソフトの機能や性能を変更できるため,それが可能な人にとっては,ソースコードの価値はより高いものとなる。

役立つソフトが文献の未整備で利用されないのはもったいない

 しかしながら,オープンソース・ソフトの機能や使い勝手を知ろうとするたびにソースコードを調べるのは,だれにでもできることではないし,時間もかかる。マニュアルやドキュメント,解説などの文献があれば,より多くのユーザーがより簡単にソフトウエアを使いこなすことができる。言い換えれば,オープンソース・ソフトの普及には文献が整備されているかどうかが大きく影響する。

 信頼できる文献等が入手できれば良いのだが,それがままならない場合もある。特に企業システムの担当者からこうした意見を聞く場合が多い。著者はつい最近も,オープンソース・ソフトを使って比較的大規模なオンライン・サービスのサイトを構築・運用しているユーザー企業の担当者から,信頼できる文献が少ないことによるシステム構築時の試行錯誤や,いったんトラブルが発生したときの対処法に関する苦労を伺ったばかりである。

 最近では,ユーザー団体やコンピュータ・ベンダーなどによる文献の整備が進み,以前より格段に使いやすくなったオープンソース・ソフトだが,公開されたばかり,あるいは更新されたばかりのソフトや,利用者が少ないソフトに関する文献はなかなか入手しずらいのも事実である。

 繰り返しになるが,オープンソース・ソフトがより一層普及するためには,利用者サイドに立った文献整備がかぎを握ると思う。12月8日発売の日経Linux最新号の特集「編集部お薦め特選フリーソフト」で紹介したように,オープンソース・ソフトの中には,役に立つ,あるいは便利に使えるものが数多くある。また,ムック最新号の付録DVD-ROMに収録した最新Linuxディストリビューション「Fedora Core 3」は,Fedora Coreとして3代目であり,代を重ねるごとに新機能が追加されるのはもちろんのこと,安定性や使い勝手も改善されている。Fedora Core 3のように著名なものは,公開されてからしばらくするとかなりの文献が提供されるが,そのほかの便利で役立つソフトが文献の未整備により広く利用されるに至らないのは,もったいないことだと思う。

 自分の間違いを省みながら,オープンソース・ソフトの一次ソースであるソースコードの価値を改めて感じるとともに,利用者にとってはソースコードだけでは不十分であることも再認識した。間違いを棚に上げて恐縮だが,日経Linuxが,Linuxをはじめとするオープンソース・ソフトの文献整備に一役買えればと意を決した次第である。

(田島 篤=日経Linux)