GeorgのBrave GNU World第22号にようこそ。 もうすぐくる2周年をむかえるにあたり、 (その前の「おつまみ」として) 去年からの私の取組みを解説する2本の記事を出そうと思います。 でも、その前に技術面の話題からとりかかることにします。
Scott GiffordによるCGIBurn [5] は、 ウェブ・ベースのCD書込みフロントエンドです。 つまり、1台のCDライターを、 単数または複数マシン上の複数ユーザーで共有できるようにする、 ということです。
CDの書込みはタイミング関係の影響を比較的受けやすいプロセスなので、 CDライターはたいてい、専用装置やファイル・サーバーに入っています。 フロントエンドの大部分は、複数のユーザーによって (訳注: 同時に) 使われるように設計されていません。 そのうえ、他のマシンからネットワーク経由で ディスプレーが見えるようにしているとき、 非常によく問題が発生します。 ショボい(flaky) ネットワークがおちた場合、書込みプロセスはたいてい、ダメになります。 また机上型の装置では通常、CDのムダづかいという問題がうまれます。 幸い、ウェブ・ベースのフロントエンドでは、こんな問題がありません。
さらにCGIBurnは、使用能力の面でも長所があります。 複数の人々が使うコンピュータがあったとして、あるユーザーが CDの書込みを起動した後で、誰か他の人のため作業スペースをあけることができます。 異機種からなるネットワークでの、この方法の利点もいくつかあります。 もしCDライターのあるマシンにSAMBAサーバーも上がっていれば、 ユーザーは適当なディレクトリーにファイルを落としてから、 CDの書込みを始めるべく、お好みのウェブ・ブラウザを使うことができます。
Scott Giffordによれば、大きい利点の1つは、モジュラー概念です。 最初の公開リリースは既に、CDからCDへ、 ISOイメージと同様、CDとディレクトリー間のコピーをサポートします。 使用するモジュールやいろいろな動作は構成ファイルで定義できるので、 新しい機能性の実装は、比較的容易です。 CGIBurnの外観や感触は、HTMLテンプレートで個人的な味付けもできます。
既に前の段落でほのめかしたように、CGIBurnはまだまだ若く、 今回が最初の公開版になります。 当然、計画中の機能リストは、 やや長めです。次の段階は、MP3やWAVのファイルと音楽CDの間のコピーでしょう。 ISOイメージ、ディレクトリー、CDRWの削除オプションも、リストにあります。 もし十分な関心があれば、Scottの考えはこうです。 つまり、 テンプレート・システムを書き直して、もっと柔軟にそして多用途にしたり、 ディレクトリーのロックをサポートしたりすることです。 そして、最終的には、ASCIIインターフェースのコマンド行や、 ボタンつき液晶ディスプレー用にさえ、 フロント・エンドを書けるようにすることを思い描いています。
現時点で最大の弱点は、オーディオ・サポートの欠如です。 もっとも彼は、それを含めるのには2、3週以内、と確信していますが。とはいえ、 早期のバージョンの割に、もう実に安定している、と彼は考えています。 興味のある開発者やHTMLデザイナーは、 どうかすすんで彼と連絡をとってください。 手助けは非常に歓迎されます。 概念や背景についても、Scottはずいぶんよく文書化もしました。
私は個人的に、改良できると思うことが1つあります。インストールです。 ですので「標準的ユーザー」は、この点で要注意だと思ってください。 それでもなおCGIBurnは、大きな可能性があり、明らかに見る価値があります。
ところで、このプロジェクトは、かなり興味深い経歴があります。 Scottは婚約者といっしょに、自分のマシン (当然、GNU/Linuxです) に入れるべく、 CDライターを買いに行きました。 しかし、彼の婚約者はGNU/Linuxの知識が少なかったこともあり、 彼は、これがフレンドリーでないと考えたのでしょう。そこで彼は、 解をさがしましたが、満足いくものはなにもなく、CGIBurnを書き始めたのです。 他の人々も関心があるかもしれないと彼が思ったとき、 少しコードをきれいになおし始め、 GNU General Public Licenseの下でリリースしたのです。
Oliver BandelによるMultiple [6] は、 GNU General Public License下の小さなコマンド行ツールです。 その機能は、同一のファイルを見つけて、重複を取り除くことです。
熱力学第2法則はホーム・ディレクトリーにも適用される (ママ) ために、他のファイル同様、 保存されたニュースやメールが多量にできてくる傾向があるので、 重複は比較的普通のことです。 特に、保存されたニュースやメールでの重複の発見が、 このプログラムを書いたOliverの理由でした。 これをもっとうまくやるのに、 保存されたメール中のいろいろな時間や日付についての問題を回避するため、 最初の空行の前を全部無視するオプションがあります。
Multipleは、 すべての重複を直接取り除いたり、 残ったファイルの名前を標準出力に印字したりできます。 ユーザーに必要なことが全ファイルの削除だということは、 まずありえないからです。
diffとは違い、無数のファイルが比較でき、 またmd5チェックサムも使っていませんので、比較的速く、効率的になっています。 ものをため込みがちな人々には特に、 これが有益なツールだということが、わかるでしょう。
Oliverによれば、Multipleの大きな弱点は、比較すべきファイルをfindからとるとき、 シンボリック・リンクをたどるオプションをfindに指定すると、 すべてのファイルを削除してしまう結果になることです。 (訳注: 同一の)ファイルが複数回あたえられるとき、この問題はいつでも起こります。 これを避けるため、彼の検討しているのは、 ディレクトリー構造を検索する独自のルーチンを書くことです。 今のところ彼は、ちゃんとした文書資料や、 マンページを書くことがもっと重要だろうと思っています。
Daniel E. SingerによるDiff2html [7] とdv [8] という2つの相対(あいたい)するプログラムは、 「何々2html」系プログラムとも呼べるものです。
既に名前の示すとおり、diff2htmlは、 diffプログラムの出力をHTML文書で表示するプログラムです。 両方のバージョンを色分けし、かなりうまい方法で隣合せにリストしたものが、 出力です。この色は、環境変数で定義できます。
Dvは"diff viewer"の略で、本質的には、 diff2htmlの出力を示すためのブラウザをたちあげる、 ラッパー(化粧箱)です。
BASHのシェルスクリプトのため、プログラムは両方とも非常に移植性があり、 あらゆるUnixマシン上で使用できます。 ただし残念ながら、作者はライセンスを指定しませんでした。 このプログラムをなんらかの方法で制御しようという意思がなかったために、 ライセンスを指定する必要について考慮していなかったのです。 これは欠点ですが、 それでも若干のユーザーのためには、両方のプログラムは、役に立つでしょう。
GNU Projectの公式部分であるGNU "GRand Unified Bootloader" (GRUB) [9] は、当然GNU General Public Licenseの条件の下で公開されています。
GNU GRUBは、i386ベースのマシン用のたぶん最も強力なブート・ローダーです。 その起源は、Erich Boleynがとりかかった1995年にさかのぼります。 Gordon Matzigkeitは、1999年に公式の管理者になり、その少し後、 Brave GNU Worldの前の日本語訳者OKUJI Yoshinoriは、 最も活発な開発者になりました。しかしもちろん、開発者はそれだけではありません。 多くの人々は、GNU GRUBに何年も貢献しましたが、 残念ながらそのリストはあまりにも長すぎて、ここでは引用できません。
GNU GRUBの能力は、驚嘆に値します。 これには、比較的快適なメニューがインターフェースとしてあり、 シリアル・コンソール経由での操作までサポートしています。 そのうえ、おまけにTFTPやNFS経由のネットワークからブートする能力があります。 したがって、ある中央サーバーからカーネルを引っ張ってくるよう、 ワークステーションを構成することができます。
GRUBはブート時に、ブートするカーネルやほかのファイルをロードできるよう、 既に多くのファイル・システム (Ext2fs、ReiserFS、BSD UFS、MS-DOS FAT16 & FAT32、Minix) を扱えます。 GRUBを再構成せずに新しいカーネルを試すとき、これが非常に便利になります。 真の救命者たりえる局面での障害解決については言わずもがな。
もしGRUBに何か欠けていたり、サポートされていなかったりする特別なことがあれば、 別のブート・ローダーを連鎖ロードすることができます。 もしそうしたければ、これらすべての特徴は、もちろんパスワードで保護できます。
GRUBシェルは、GNU/HURD、GNU/Linux、*BSDのような他のOSの下で、 GRUB bootcodeを模擬試行するUnixプログラムです。 これにより、リブートぬきで、機能の試験ができます。
GRUBは現在リリース1.0の直前で、大部分の作業は残りのバグつぶしや、 安定性の向上でしょう。これには新しい機能の計画はありません。
リリース1.0の後、Gordon Matzigkeitが既に開発にかかっているFigure [10] というGRUB用の新しいインフラストラクチャが、試されることでしょう。 もしこれが良いアイデアだとあかされたら、本質的にコンパイラ、 メモリー管理などのあるミニOSの能力がGNU GRUBにそなわるでしょう。 Figureとは関係なく、すべてのことがらは、 GRUBがちゃんとした独自のカーネルに向かって進んでいることを示すように見えます。 その主な理由は、ブートストラップ環境を完全に入れ替えるモジュール群または、 カーネルのロードで、自分自身を拡張する小さなブート・ローダーの意義が、 大きいからです。
しかし、現在この計画はまだまだ無理で、GNU GRUBについて、GNU/HURDをブートでき、 今までは夢に見られていただけの機能のあるブート・ローダーのあることが、 もっと重要です。それをふまえれば、 OpenLinux、Plamo Linux、Mandrake、BestLinux、Conectiva Linuxといった、 いくつものGNU/Linuxディストリビューションでこれを既定で使っている、 ということが大きな意味をなします。
ですが技術面はここでおひらきにして、予告しておいた特別な記事にはいりましょう。
ヨーロッパにおけるFree Software Foundationの姉妹組織創設は、 私が1年以上前からもっていたアイデアです。 Richard M. Stallmanはこれを良いことだと思い、これを実行するにあたっては、 GNU Privacy Guard (GPG) 作者のWerner Koch、そして、 GNU Pascal管理者のPeter Gerwinskiがふさわしいだろう、 という点で、私たちはともに同意をしました。 最初のブレーンストーミング期間の後、 FreeGISプロジェクトの共同創設者で、 ffIIの幹事会員のBernhard Reiterに参加するよう頼みました。
討論を実際に私たちが公開で始めるのに先立ち、私たち4人は、 いろいろなことがらにかんする見方をお互いわかりあうのと同様、 利点や、ありがちな落とし穴について論じました。 最終的な時間は、2000年11月でした。
Free Software Foundation Europeの目的は、何でしょうか?
米国のFree Software Foundationの主任務は、基金の分配、結合、結集と同様、 技術的かつ組織的基盤の供給です。 日次の作業だと米国はときおりはるか遠くになりますので、 ヨーロッパでは今までこれらすべての部分は代行を務めました。 また寄付の節税効果は、これまで不可能であった重要な点です。
FSF Europeの宣言したゴールは、ちょうど元祖FSFのするように、 GNU Projectや他の有益なFree Softwareプロジェクトを技術的に、 そして組織的な面でサポートすることです。 また、より良好で効果的に資金を供給するため、 ヨーロッパで財政的な支援をすることを望んでいます。 最終的には、Free Softwareの健全な基礎をヨーロッパに整えるために、 有能な政治的協力者になろうとしています。
私たちはともに、中心概念をねりあげ、この非公開グループで相互信用を築き上げました。 なぜなら普通、こういうことについて公然と論じることは、 中心問題をあいまいにさせる傾向のある、非常に感情的な討論につながるからです。 政治面からいうと、この手の討論は通常、 Free Software分野に合意がないよう見受けられ、 その結果かなり逆効果になることがわかっていました。 今や、永続的な画期を示す堅実な基盤ができたと思います。
その永続性の保証が私たちの目標であり、そして、このため、 コミュニティー全体の手助けが、要望されています。 興味のある人々のために参照すべき点としては、 非常に簡素なウェブ・ページ [11] や公開のメーリング・リスト [12] を用意しました。
しかし、FSF Europeがすることになるだろう第4の任務もあります。 それは、GNU Business Networkの維持と組織化です。
「GNU Business Network」の作成は、 FSF Europeについて私たちがまだBernhardぬきで論じていたとき、 私が思いついたものです。 いろいろな組織や会社が、 LinuxTagの主催者にたいして何かそれと似たようなものを要請したとき、 シュツットガルトのLinuxTag紙で、これはさらに具体的になりました。 これについて私は追試として、サン・ノゼのLinux Expoで若干の人々とともに話し、 非常に積極的なフィードバックを得ました。
そのアイデアは、GNU Business Networkに企業とGNU Projectとをもっと近づけさせて、 GNU哲学にしたがったビジネスを企業が確約するよう、 さらなる動機をあたえさせることです。 その焦点は、 世界的な参加者リストをかかえた中央ハブとしてはたらくウェブ・サイトでしょう。 このリストは、本質的に3つの目的にかないます。
まず第1に、 顧客がFree Softwareコミュニティーに貢献する企業の方を具体的に選好できます。 こうして、費やしたお金でだれでもが間接的にコミュニティーを強化できます。
提供される第2の機能は、 世界中のFree Software会社のためのビジネス間の橋渡しプラットホームとしてです。 会社はこうして、見込みのあるディストリビューションの請負 (distribution contractor) や、地元のサポート提供者を見つけしたり、 また、ソフトウェア開発で力を合わせたりすることができます。 特に最後の部分には、未開発の巨大な潜在的可能性があるので、 これを変えたいと私たちは希望しています。
そして最後に、私たちは、 GNU Business Networkでより良い位置を得るために、 独占的活動を減らすよう企業にすすめたいと思います。 GNU Business Networkの会員資格が財政的貢献にではなく、 企業の業務活動だけに基づくからです。
さらに、 Free Softwareプロジェクト用に認定書の一種を発行することが計画されています。 これは、Free Softwareとの親和性を顧客やコミュニティーに示すために、 会社が使えるブランドになります。
GNU Business Networkの中心文献は、 FSF Europeの主宰者が、 Richard M. Stallmanとの度重なる意見交換からおこしつつある 「GNU Business Network Definition」でしょう。 現在これは約20回を数え、これができるようになる点は見つかったと信じます。
興味のある人々や特に会社は、 公開のメーリング・リスト [13] 上で概念やアイデアについて論じるよう、 大いに奨励されます。
さてさて、今月のBrave GNU Worldはこのへんです。 私は、多くのフィードバック [1] を得ることを期待し、 もちろん新しく進展のある場合には、 FSF EuropeやGNU Business Networkの最新情報をお届けできるでしょう。
情報
|
[1]
意見、
批判や質問は
Brave GNU World <column@brave-gnu-world.org>
まで
[2] GNUプロジェクトのホーム・ページ http://www.gnu.org/home.ja.html [3] GeorgのBrave GNU Worldのホーム・ページ http://brave-gnu-world.org [4] 「We run GNU」イニシアチブ http://www.gnu.org/brave-gnu-world/rungnu/rungnu.ja.html [5] CGIBurn ホーム・ページ http://www.tir.com/~sgifford/cgiburn/ [6] Multiple FTPアドレス ftp://www.belug.org/pub/user/ob/Programs/Tools/ [7] Diff2html FTPアドレス ftp://ftp.cs.duke.edu/pub/des/scripts/diff2html [8] Dv FTPアドレス ftp://ftp.cs.duke.edu/pub/des/scripts/dv [9] GNU GRUB ホーム・ページ http://www.gnu.org/software/grub/ [10] Figure ホーム・ページ http://fig.org/figure/ [11] Free Software Foundation Europe ホーム・ページ http://www.fsfeurope.org [12] Free Software Foundation Europe メーリング・リスト http://mailman.fsfeurope.org [13] GNU Business Network メーリング・リスト http://mailman.gnubiz.org |
GNUのホーム・ページにもどる。
FSFやGNUについてのお問合せ、 ご質問は、 (英語で) gnu@gnu.orgまで。
GeorgのBrave GNU Worldについてのご意見は、
(英語かドイツ語で)
column@gnu.orgまで。
ウェブ・ページについてのご意見は、
(英語で)
webmasters@www.gnu.orgまで。
他のご質問は、
(英語で)
gnu@gnu.orgまで。
日本語訳: 飯田義朗
Permission is granted to make and distribute verbatim copies of this transcript as long as the copyright and this permission notice appear.
(著作権と上の許可告知のある限り、 この写しの逐語的な複製をとって、 配布する許可を認めます。)
Last modified: Mon Jan 15 12:34:43 CET 2001