<?xml version="1.0" encoding="euc-jp"?> <!-- The FreeBSD Documentation Project The FreeBSD Japanese Documentation Project Original revision: r52072 $FreeBSD$ --> <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="introduction"> <info> <title>はじめに</title> <authorgroup> <author> <personname> <firstname>Jim</firstname> <surname>Mock</surname> </personname> <contrib>再構成、部分的な改訂: </contrib> </author> </authorgroup> </info> <sect1 xml:id="introduction-synopsis"> <title>この章では</title> <para>&os; に興味を持っていただきありがとうございます! この章では &os; の歴史、目標、開発モデルなど、 &os; プロジェクトに関するさまざまな事柄を扱います。</para> <para>この章に書かれている話題は、次のようなものです。</para> <itemizedlist> <listitem> <para>&os; とその他のオペレーティングシステムとの違い</para> </listitem> <listitem> <para>&os; プロジェクトの歴史</para> </listitem> <listitem> <para>&os; プロジェクトの目標</para> </listitem> <listitem> <para>&os; オープンソース開発モデルの基本的な考え方</para> </listitem> <listitem> <para>そして、<quote>&os;</quote> という名前の由来について</para> </listitem> </itemizedlist> </sect1> <sect1 xml:id="nutshell"> <title>&os; へようこそ!</title> <indexterm><primary>4.4BSD-Lite</primary></indexterm> <para>&os; は、標準に準拠した Unix-like なオープンソースのオペレーティングシステムで、 x86 (32 および 64 ビットの両方), &arm;, AArch64, &risc-v;, &mips;, &power;, &powerpc; および Sun &ultrasparc; コンピュータに対応しています。 &os; は、プリエンプティブなマルチタスク、 メモリ保護、仮想メモリ、マルチユーザシステム、SMP 対応、 さまざまな言語やフレームワーク用のすべてのオープンソースの開発ツール、 X ウィンドウシステム、KDE や GNOME を中心としたデスクトップ機能といった、 今日では標準となっている機能をすべて提供しています。 注目すべき機能は以下の通りです。</para> <itemizedlist> <listitem> <para><emphasis>自由なオープンソースライセンス</emphasis>。 ソースコードを自由に変更し、配布することができます。 潜在的なライセンスの互換性の問題を避け、 コピーレフトライセンスに典型的な制限を課すことなく、 オープンソースプロジェクトおよびクローズな製品の両方に組み込むことが可能です。</para> </listitem> <listitem> <para><emphasis>堅固な TCP/IP ネットワーク</emphasis> <indexterm> <primary>TCP/IP ネットワーク</primary></indexterm> - &os; は、 かってないほどの性能とスケーラビリティを兼ね備えた業界標準プロトコルを実装しています。 サーバおよびルータ/ファイアウォールルールの両方と相性が良く、 実際に多くの会社やベンダがまさにこの目的で採用しています。</para> </listitem> <listitem> <para><emphasis>完全に統合された OpenZFS への対応</emphasis>。 これには root-on-ZFS, ZFS ブート環境、障害管理、 委任管理、jails への対応、&os; 固有の文書、 そしてシステムのインストーラによる対応が含まれます。</para> </listitem> <listitem> <para>Capsicum ケーパビリティおよびサンドボックスメカニズムに対する強制アクセスコントロールフレームワークによる <emphasis>拡張されたセキュリティ機能</emphasis>。 </para> </listitem> <listitem> <para>対応しているすべてのアーキテクチャで利用可能な <emphasis>3 万を超えるコンパイル済みの packages</emphasis>。 そして、あなた自身のカスタマイズされたソフトウェアの構築を容易にする Ports Collection。</para> </listitem> <listitem> <para><emphasis>ドキュメント</emphasis> - システム管理からカーネル内部にまで渡る内容に関する、 さまざまな著者によるハンドブックやブックに加え、 &man.man.1; ページが用意されています。 ユーザ空間のデーモン、 ユーティリティおよびコンフィグレーションファイルだけではなく、 カーネルドライバの API (セクション 9) および個々のドライバ (セクション 4) も用意されています。</para> </listitem> <listitem> <para><emphasis>分かりやすく首尾一貫したリポジトリ構造とビルドシステム</emphasis> - &os; は、カーネルおよびユーザ空間の両方について、 すべての構成要素をひとつのリポジトリで管理しています。 統一されカスタマイズが容易なビルドシステムおよび綿密に考えられた開発プロセスが、 あなた自身の製品のビルドインフラストラクチャに &os; を統合することを容易にします。</para> </listitem> <listitem> <para><emphasis>Unix の哲学に忠実であり続けます</emphasis>。 ハードコードされたモノリシックな <quote>オールインワン</quote> デーモンより、 要素から構成することを好みます。</para> </listitem> <listitem> <para><indexterm> <primary>バイナリ互換</primary> <secondary>Linux</secondary></indexterm> Linux との <emphasis>バイナリ互換</emphasis>。 仮想化の必要なしに多くの Linux バイナリを実行できます。</para> </listitem> </itemizedlist> <para>&os; はカリフォルニア大学バークレイ校の Computer Systems Research Group (CSRG)<indexterm> <primary>Computer Systems Research Group (CSRG)</primary> </indexterm> による 4.4BSD-Lite<indexterm> <primary>4.4BSD-Lite</primary> </indexterm> リリースを基にしており、 BSD システムの開発の優れた伝統を守り続けています。 CSRG による素晴らしい活動に加えて、 &os; プロジェクトは何千時間もの時間を注ぎ込んで、 実際の使用の場において最大の性能と信頼性を発揮するためにシステムのチューニングをおこなっています。 &os; は、商用のオペレーティングシステムと同等の性能、信頼性を、 他では実現されていない数多くの最新の機能と共に提供しています。</para> <sect2 xml:id="os-overview"> <title>&os; で何ができるの?</title> <para>あなたの思いつく限りのアプリケーションは、何でも &os; で実行できます。ソフトウェア開発からファクトリオートメーション、 在庫制御から遠く離れた人工衛星のアンテナの方向調整まで; 商用 &unix; 製品でできることは、&os; でも十分にできるのです! また、&os; は世界中の研究センターや大学によって開発される文字通り何千もの高品質で、 たいていはほとんど無料で利用できるアプリケーションによる恩恵を得ることができます。</para> <para>&os; のソースコードは広く提供されているので、 システムも特別なアプリケーションやプロジェクトに合わせて、 いくらでもカスタマイズすることができます。 これは有名な商業ベンダから出ているほとんどのオペレーティング システムでは不可能なことです。以下に現在 &os; を 使っている人々のアプリケーションの例をいくつか上げます:</para> <itemizedlist> <listitem> <para><emphasis>インターネットサービス:</emphasis> &os; に組み込まれている 頑強な TCP/IP ネットワーキング機能は次のようなさまざまな インターネットサービスの理想的なプラットフォームになります:</para> <itemizedlist> <listitem> <para>ウェブサーバ</para> </listitem> <listitem> <para>IPv4 および IPv6 ルーティング</para> </listitem> <listitem> <para>ファイアウォール<indexterm> <primary>ファイアウォール</primary> </indexterm>と NAT<indexterm> <primary>NAT</primary> </indexterm> (<quote>IP マスカレード</quote>) ゲートウェイ</para> </listitem> <listitem> <para>FTP サーバ<indexterm> <primary>FTP サーバ</primary> </indexterm></para> </listitem> <listitem> <para> <indexterm> <primary>電子メール</primary> </indexterm> <indexterm> <primary>email</primary> </indexterm> メールサーバ</para> </listitem> <listitem> <para>さらにいろいろ…</para> </listitem> </itemizedlist> </listitem> <listitem> <para><emphasis>教育:</emphasis> あなたは、計算機科学または関連分野の工学を専攻する学生さんですか? オペレーティングシステムやコンピュータアーキテクチャ、 ネットワークについて学習するなら、 実際に &os; のソースコードを読んで、 それがどのように動作するのかを学ぶのが一番よい方法です。 また、無料で利用できる CAD や数学、 グラフィックデザインのパッケージがいくつもあるので、 コンピュータに関わる主要な目的が、 <emphasis>他</emphasis>のことをすることにある方にも、 大いに役立ちます。</para> </listitem> <listitem> <para><emphasis>研究:</emphasis> システム全体のソースコードが利用できるため、 &os; はオペレーティングシステムの研究だけでなく、 計算機科学の他の部門においても優れたプラットフォームです。 自由に利用できる &os; の特長は、オープンフォーラムで 議論される特別なライセンスの同意や制限について心配することなく、 離れたグループでもアイディアや開発の共有による共同研究を可能にします。</para> </listitem> <listitem> <para><emphasis>ネットワーキング:</emphasis> 新しいルータ<indexterm> <primary>ルータ</primary> </indexterm>が必要? ネームサーバ (DNS)<indexterm> <primary>DNS サーバ</primary> </indexterm> は? 内部のネットワークを人々から守るファイアウォールは? &os; はすみに眠っている使われていない PC を簡単に 洗練されたパケットフィルタリング機能を持つ高級なルータに 変えることができます。</para> </listitem> <listitem> <para><emphasis>組み込み:</emphasis> &os; は、 組み込みシステムを構築する優れたプラットフォームとなります。 <indexterm> <primary>embedded</primary> </indexterm> &arm;, &mips; および &powerpc; プラットフォームへのサポートとともに、 強固なネットワークスタック、最新の機能および 寛容な<link xlink:href="&url.books.faq;/introduction.html#bsd-license-restrictions">BSD ライセンス</link> により、 &os; は、組み込みルータ、 ファイアウォールおよび他のデバイスを構築する優れた基盤となります。</para> </listitem> <listitem> <para> <indexterm> <primary>X Window System</primary> </indexterm> <indexterm> <primary>GNOME</primary> </indexterm> <indexterm> <primary>KDE</primary> </indexterm> <emphasis>デスクトップ:</emphasis> &os; は、自由に利用できる X11 サーバを使うことによって、 安価なデスクトップとなります。 &os; では、標準的な <application>GNOME</application> および <application>KDE</application> グラフィカルユーザインタフェースを含む、 数多くのオープンソースのデスクトップ環境を選択できます。 &os; は、 中央のサーバから<quote>ディスクレス</quote>でもブート可能であり、 個々のワークステーションを安価で、 容易に管理することさえ可能にします。</para> </listitem> <listitem> <para><emphasis>ソフトウェア開発:</emphasis> 基本的な &os; システムには、完全な C/C++<indexterm> <primary>Compiler</primary> </indexterm> コンパイラやデバッガスーツを含む完全な開発ツールがついてきます。 他の多くの言語へのサポートも ports および package コレクションから利用できます。</para> </listitem> </itemizedlist> <para>&os; は、無料でダウンロードできます。 また、CD-ROM または DVD でも入手可能です。 詳しくは <xref linkend="mirrors"/> をご覧ください。</para> </sect2> <sect2 xml:id="introduction-nutshell-users"> <title>&os; はどこに使われていますか?</title> <indexterm> <primary>ユーザ</primary> <secondary>&os; を利用している大規模サイト</secondary> </indexterm> <para>&os; は、ウェブサービスの能力で知られています。 &os; が利用されている代表的なサイトには <link xlink:href="https://news.ycombinator.com/">Hacker News</link>, <link xlink:href="http://www.netcraft.com/">Netcraft</link>, <link xlink:href="http://www.163.com/">NetEase</link>, <link xlink:href="https://signup.netflix.com/openconnect">Netflix</link>, <link xlink:href="http://www.sina.com/">Sina</link>, <link xlink:href="http://www.sony.co.jp/">Sony Japan</link>, <link xlink:href="http://www.rambler.ru/">Rambler</link>, <link xlink:href="http://www.yahoo.com/">Yahoo!</link> および <link xlink:href="http://www.yandex.ru/">Yandex</link> があります。</para> <para>&os; は、 先進的な機能、高いセキュリティ、および定期的なリリースサイクル、 そして寛容なライセンスにより、 多くの商用およびオープンソースのアプライアンス、 デバイスおよび製品を構築するプラットフォームとして利用されています。 世界最大規模の多くの IT 会社が &os; を使っています。</para> <itemizedlist> <listitem> <para><link xlink:href="http://www.apache.org/">Apache</link> <indexterm> <primary>Apache</primary> </indexterm> - Apache ソフトウェア財団は、 1.4 百万回を超えるコミットというおそらく世界で最も大規模な SVN リポジトリを含む、数多くの公式のインフラストラクチャで &os; を使っています。</para> </listitem> <listitem> <para><link xlink:href="http://www.apple.com/">Apple</link> <indexterm> <primary>Apple</primary> </indexterm> - OS X は、 &os; から、ネットワークスタック、仮想ファイルシステム、 そして多くのユーザランドコンポーネントを取り入れています。 Apple iOS も &os; から取り入れた要素を含んでいます。</para> </listitem> <listitem> <para><link xlink:href="http://www.cisco.com/">Cisco</link> <indexterm> <primary>Cisco</primary> </indexterm> - IronPort ネットワークセキュリティおよびアンチスパムアプライアンスは、 改造された &os; カーネルで動いています。</para> </listitem> <listitem> <para><link xlink:href="http://www.citrix.com/">Citrix</link> <indexterm> <primary>Citrix</primary> </indexterm> - NetScaler の一連のセキュリティアプライアンスは、 &os; シェルとともに 4-7 レイヤのロードバランス、 コンテントキャシュ、アプリケーションファイアウォール、 セキュリティ VPN およびモバイルクライド・ネットワークアクセスを提供します。</para> </listitem> <listitem> <para><link xlink:href="https://www.emc.com/isilon">Dell EMC Isilon</link> <indexterm> <primary>Isilon</primary> </indexterm> - Isilon 社のエンタープライズストレージアプライアンスは、&os; ベースです。 寛大な &os; ライセンスのおかげで、Isilon は、 彼らの知的財産物をカーネルに統合することができるため、 オペレーティングシステムではなく、 製品そのものに焦点を当てた開発が可能となっています。</para> </listitem> <listitem> <para><link xlink:href="http://www.dell.com/KACE">Dell KACE</link> <indexterm> <primary>Dell KACE</primary> </indexterm> - KACE システム管理アプライアンスでは、 &os; が用いられています。信頼性、 スケーラビリティおよび継続的な開発をサポートしているコミュニティが評価され採用されています。</para> </listitem> <listitem> <para><link xlink:href="http://www.ixsystems.com/">iXsystems</link> <indexterm> <primary>iXsystems</primary> </indexterm> - 統合ストレージアプライアンスの TrueNAS シリーズは &os; ベースです。 商用の製品に加え、iXsystems は、オープンソースプロジェクトの TrueOS および FreeNAS の開発も運営しています。</para> </listitem> <listitem> <para><link xlink:href="http://www.juniper.net/">Juniper</link> <indexterm> <primary>Juniper</primary> </indexterm> - Juniper のすべてのネットワークギア (ルータ、スイッチ、セキュリティおよびネットワークアプライアンス) を動かしている JunOS オペレーティングシステムは、 &os; ベースです。 Juniper は、&os; プロジェクトと商用製品を提供しているベンダとの間で協力関係が成功している数多くのベンダのひとつです。 将来 &os; の新しい機能を JunOS へと統合する際の複雑さを減らすため、 Juniper で作成された改良点は、&os; に取り込まれています。</para> </listitem> <listitem> <para><link xlink:href="http://www.mcafee.com/">McAfee</link> <indexterm> <primary>McAfee</primary> </indexterm> - Sidewinder などの McAfee エンタープライズファイアウォール製品のベースである SecurOS は &os; ベースです。</para> </listitem> <listitem> <para><link xlink:href="http://www.netapp.com/">NetApp</link> <indexterm> <primary>NetApp</primary> </indexterm> - ストレージアプライアンスの Data ONTAP GX シリーズは、&os; ベースです。 NetApp は、新しい BSD ライセンスのハイパーバイザである bhyve などの数多くの機能を &os; プロジェクトに還元しています。</para> </listitem> <listitem> <para><link xlink:href="http://www.netflix.com/">Netflix</link> <indexterm> <primary>Netflix</primary> </indexterm> - Netflix が顧客へのストリームムービーに使用している OpenConnect アプライアンスは、&os; ベースです。 Netflix は、コードベースに対し多大な貢献を行っており、 &os; のメインラインからの差分がゼロになるように作業を行っています。 Netflix OpenConnect アプライアンスは、 北米の全インターネットトラフィックの 32% の配送を受け持っています。</para> </listitem> <listitem> <para><link xlink:href="http://www.sandvine.com/">Sandvine</link> <indexterm> <primary>Sandvine</primary> </indexterm> - Sandvine は、 ハイパフォーマンスでリアルタイムのネットワークプロセッシングプラットフォームのベースに &os; を使用しています。このプラットフォームは、 彼らのインテリジェントネットワークポリシーコントロール製品を構成しています。</para> </listitem> <listitem> <para><link xlink:href="http://www.sony.com/">Sony</link> <indexterm> <primary>Sony</primary> </indexterm> - PlayStation 4 のゲームコンソールは、 &os; の改良版が動いています。</para> </listitem> <listitem> <para><link xlink:href="http://www.sophos.com/">Sophos</link> <indexterm> <primary>Sophos</primary> </indexterm> - Sophos Email アプライアンス製品は、強化された &os; がベースです。 インバウンドメールに対してスパムやウィルススキャンを行う一方で、 アウトバウンドメールがマルウェアではないか、また、 機密情報がアクシデントで漏洩してしまわないようにモニタします。</para> </listitem> <listitem> <para><link xlink:href="http://www.spectralogic.com/">Spectra Logic</link> <indexterm> <primary>Spectra Logic</primary> </indexterm> - アーカイブグレードストレージアプライアンスの nTier シリーズは、&os; および OpenZFS が動いています。</para> </listitem> <listitem> <para><link xlink:href="https://www.stormshield.eu">Stormshield</link> <indexterm> <primary>Stormshield</primary> </indexterm> - Stormshield ネットワークセキュリティアプライアンスは、 強化された &os; がベースです。 BSD ライセンスが、彼らの知的財産のシステムへの統合を可能にする一方で、 コミュニティに非常に多くの興味深い開発結果をもたらしてくれます。</para> </listitem> <listitem> <para><link xlink:href="http://www.weather.com/">The Weather Channel</link> <indexterm> <primary>The Weather Channel</primary> </indexterm> - 各ローカルケーブルプロバイダのヘッドエンドにインストールされていて、 ローカルの天気予報をケーブル TV ネットワークプログラムに送る IntelliStar アプライアンスでは &os; が動いています。</para> </listitem> <listitem> <para><link xlink:href="http://www.verisign.com/">Verisign</link> <indexterm> <primary>Verisign</primary> </indexterm> - Verisign は .com および .net ルートドメインレジストリおよび関連する DNS インフラストラクチャの運用に責任を持っています。 彼らのインフラストラクチャに一般的な障害点がないように、&os; を含むさまざまなネットワークオペレーティングシステムに信頼を寄せています。</para> </listitem> <listitem> <para><link xlink:href="http://www.voxer.com/">Voxer</link> <indexterm> <primary>Voxer</primary> </indexterm> - Voxer のモバイルボイスメッセージのプラットフォームでは、 ZFS が &os; 上で動いています。 Voxer は、Solaris から派生したオペレーティングシステムから、 &os; へと移行しました。優れた文書、 幅広く活動的なコミュニティ、 そして開発者にとって好意的な環境がその理由です。 <acronym>ZFS</acronym> および DTrace といった決定的な機能に加え、 &os; では、 <acronym>ZFS</acronym> が TRIM に対応しています。</para> </listitem> <listitem> <para><link xlink:href="http://www.whatsapp.com/">WhatsApp</link> <indexterm> <primary>WhatsApp</primary> </indexterm> - WhatsApp は、サーバあたり同時に 100 万を超える TCP 接続を扱うことのできるプラットフォームを必要とした際に、 プラットフォームとして &os; を選択しました。 サーバあたり 250 万の接続を超えるようにスケールしています。</para> </listitem> <listitem> <para><link xlink:href="http://wheelsystems.com/">Wheel Systems</link> <indexterm> <primary>Wheel Systems</primary> </indexterm> - FUDO セキュリティアプライアンスは、 エンタープライズおよびシステムの管理者に対し、 モニタ、コントロール、レコードおよび audit コントラクタを提供します。 ZFS, GELI, Capsicum, HAST および auditdistd といった &os; の最良なセキュリティ機能がベースとなっています。</para> </listitem> </itemizedlist> <para>また、&os; は関連したオープンソースプロジェクトを数多く生み出しています。</para> <itemizedlist> <listitem> <para><link xlink:href="http://bsdrp.net/">BSD Router</link> <indexterm> <primary>BSD Router</primary> </indexterm> - 広く使われているエンタープライズルータの置き換えとなるような &os; ベースのルータで、標準的な PC ハードウェアで動作するように設計されています。</para> </listitem> <listitem> <para><link xlink:href="http://www.freenas.org/">FreeNAS</link> <indexterm> <primary>FreeNAS</primary> </indexterm> - ネットワークファイルサーバアプライアンスとして使用するように設計されたカスタマイズ版の &os; です。 UFS および ZFS ファイルシステムの両方を簡単に管理できるように python ベースのウェブインタフェースを提供しています。 NFS, SMB/CIFS, AFP, FTP および iSCSI に対応しており、 &os; jail ベースの拡張プラグインシステムも提供しています。</para> </listitem> <listitem> <para><link xlink:href="http://www.ghostbsd.org/">GhostBSD</link> <indexterm> <primary>GhostBSD</primary> </indexterm> - GNOME デスクトップ環境が搭載されたデスクトップベースの &os; ディストリビューションです。</para> </listitem> <listitem> <para><link xlink:href="http://mfsbsd.vx.sk/">mfsBSD</link> <indexterm> <primary>mfsBSD</primary> </indexterm> - メモリから完全に実行可能な &os; システムのイメージを構築するためのツールキットです。</para> </listitem> <listitem> <para><link xlink:href="http://www.nas4free.org/">NAS4Free</link> <indexterm> <primary>NAS4Free</primary> </indexterm> - PHP によるウェブインタフェースを搭載した &os; ベースのファイルサーバのディストリビューションです。</para> </listitem> <listitem> <para><link xlink:href="http://www.opnsense.org/">OPNSense</link> <indexterm> <primary>OPNsense</primary> </indexterm> - OPNsense は、オープンソースの使いやすく構築が簡単な FreeBSD ベースのファイアウォールおよびルータのプラットフォームです。 OPNsense は、 高価な商用のファイアウォールや標準で利用可能なほとんどの機能を持っています。 オープンで検証可能なソースと共に、 商品が提供している豊富な機能のセットを提供します。</para> </listitem> <listitem> <para><link xlink:href="https://www.trueos.org">TrueOS</link> <indexterm> <primary>TrueOS</primary> </indexterm> - デスクトップユーザに向けたカスタマイズ版の &os; です。 すべてのユーザが &os; のパワーを経験できるように、 グラフィカルなユーティリティを持っています。 Windows および OS X ユーザが楽に移行できるように設計されています。</para> </listitem> <listitem> <para><link xlink:href="http://www.pfsense.org/">pfSense</link> <indexterm> <primary>pfSense</primary> </indexterm> - 数多くの機能および拡張 IPv6 サポートを持つ &os; ベースのファイアウォールディストリビューションです。</para> </listitem> <listitem> <para><link xlink:href="http://zrouter.org/">ZRouter</link> <indexterm> <primary>ZRouter</primary> </indexterm> - &os; ベースの組み込みデバイス用のオープンソースのファームウェアです。 いつでも購入できるようなルータ上のプロプリエタリのファームウェアの置き換えとなるように設計されています。</para> </listitem> </itemizedlist> <para>Wikipedia にも <link xlink:href="http://en.wikipedia.org/wiki/List_of_products_based_on_FreeBSD">&os; ベースの製品のリスト</link> がまとめられています。</para> </sect2> </sect1> <sect1 xml:id="history"> <title>&os; プロジェクトについて</title> <para>以下の節では簡単な歴史やプロジェクトの目標、 開発モデルなど、普段は表にでない話題を提供しています。</para> <sect2 xml:id="intro-history"> <title>&os; 小史</title> <!-- <para><emphasis>訳: &a.jp.masaki;, &a.jp.hino;. 19 December 1996.</emphasis></para> --> <indexterm><primary>386BSD Patchkit</primary></indexterm> <indexterm><primary>Hubbard, Jordan</primary></indexterm> <indexterm><primary>Williams, Nate</primary></indexterm> <indexterm><primary>Grimes, Rod</primary></indexterm> <indexterm> <primary>FreeBSD プロジェクト</primary> <secondary>history</secondary> </indexterm> <para>&os; プロジェクトは 1993 年の始めに Unofficial 386BSD Patchkit の最後の 3 人のまとめ役によって、部分的に patchkit から派生する形で開始されました。ここでの 3 人のまとめ役というのは、Nate Williams, Rod Grimes と、 Jordan Hubbard です。</para> <indexterm><primary>386BSD</primary></indexterm> <para>このプロジェクトのもともとの目標は、patchkit という仕組みではもう十分に解決できなくなってしまった 386BSD の数多くの問題を修正するための、386BSD の暫定的なスナップショットを作成することでした。 こういった経緯を経ているので、 このプロジェクトの初期の頃の名前は 386BSD 0.5 や 386BSD 暫定版 (Interim) でした。</para> <indexterm><primary>Jolitz, Bill</primary></indexterm> <para>386BSD は、Bill Jolitz が (訳注: バークレイ Net/2 テープを基に) 作成したオペレーティングシステムです。当時の 386BSD は、ほぼ一年にわたって放っておかれていた (訳注: 作者がバグの報告を受けても何もしなかった) というひどい状況に苦しんでいました。 作者の代わりに問題を修正し続けていた patchkit は日を追うごとに不快なまでに膨張してしまっていました。 このような状況に対して、彼らは暫定的な <quote>クリーンアップ</quote> スナップショットを作成することで Bill を手助けしようと決めました。しかし、 この計画は唐突に終了してしまいました。Bill Jolitz が、 このプロジェクトに対する受け入れ支持を取り下げることを突然決意し、 なおかつこのプロジェクトの代わりに何をするのかを一切言明しなかったのです。</para> <indexterm><primary>Greenman, David</primary></indexterm> <indexterm><primary>Walnut Creek CDROM</primary></indexterm> <para>たとえ Bill が支持してくれないとしても、 彼ら 3 人の目標には依然としてやる価値があると考えていたため、 David Greenman が考案した名称 <quote>&os;</quote> をプロジェクトの名前に採用し、新たなスタートを切りました。 この時点でのプロジェクトの初期目標は、すでにこのシステム (訳注: 386BSD + Patchkit) を使っていた利用者たちと相談して決められました。 プロジェクトが実現に向けて軌道に乗ってきたことが明確になった時点で、 Jordan は Walnut Creek CDROM 社に連絡してみました。CD-ROM を使って &os; を配布することによって、 インターネットに容易に接続できない多くの人々が &os; を簡単に入手できるようになると考えたからです。Walnut Creek CDROM 社は &os; を CD で配布するというアイデアを採用してくれたばかりか、 作業するためのマシンと高速なインターネット回線をプロジェクトに提供してくれました。 当時は海のものとも山のものともわからなかったこのプロジェクトに対して、Walnut Creek CDROM 社が信じられないほどの信頼を寄せてくれたおかげで、 &os; は短期間のうちにここまで大きく成長したのです。</para> <indexterm><primary>4.3BSD-Lite</primary></indexterm> <indexterm><primary>Net/2</primary></indexterm> <indexterm><primary>U.C. Berkeley</primary></indexterm> <indexterm><primary>386BSD</primary></indexterm> <indexterm><primary>Free Software Foundation</primary></indexterm> <para>CD-ROM による最初の配布 (そしてネットでの、 ベータ版ではない最初の一般向け配布) は &os; 1.0 で、1993 年 12 月に公開されました。これはカリフォルニア大学バークレイ校の 4.3BSD-Lite (<quote>Net/2</quote>) を基とし、386BSD や Free Software Foundation からも多くの部分を取り入れたものです。 これは初めて公開したものとしては十分に成功しました。続けて 1994 年 5 月に &os; 1.1 を公開し、 非常に大きな成功を収めました。</para> <indexterm><primary>Novell</primary></indexterm> <indexterm><primary>U.C. Berkeley</primary></indexterm> <indexterm><primary>Net/2</primary></indexterm> <indexterm><primary>AT&T</primary></indexterm> <para>この時期、 あまり予想していなかった嵐が遠くから接近してきていました。 バークレイ Net/2 テープの法的な位置づけについて、Novell 社とカリフォルニア大学バークレイ校との間の長期にわたる 法廷論争において和解が成立したのです。和解の内容は、Net/2 のかなりの部分が <quote>権利つき (encumbered)</quote> コードであり、それは Novell 社の所有物である、 というバークレイ校側が譲歩したものでした。なお、Novell 社はこれらの権利を裁判が始まる少し前に AT&T 社から買収していました。 和解における譲歩の見返りにバークレイ校が得たのは、 4.4BSD-Lite が最終的に発表された時点で、 4.4BSD-Lite は権利つきではないと公式に宣言されること、 そしてすべての既存の Net/2 の利用者が 4.4BSD-Lite の利用へと移行することが強く奨励されること、という Novell 社からの <quote>ありがたき天からの恵み</quote> でした (訳注: 4.4BSD-Lite はその後 Novell 社のチェックを受けてから公開された)。&os; も Net/2 を利用していましたから、1994 年の 7 月の終わりまでに Net/2 ベースの &os; の出荷を停止するように言われました。ただし、 このときの合意によって、 私たちは締め切りまでに一回だけ最後の公開をすることを許されました。 そしてそれは &os; 1.1.5.1 となりました。</para> <para>それから &os; プロジェクトは、まっさらでかなり不完全な 4.4BSD-Lite を基に、文字どおり一から再度作り直すという、 難しくて大変な作業の準備を始めました。<quote>Lite</quote> バージョンは、部分的には本当に軽くて、中身がなかったのです。 起動し、 動作できるシステムを実際に作り上げるために必要となるプログラムコードのかなりの部分がバークレイ校の CSRG (訳注: BSDを作っているグループ) によって (いろいろな法的要求のせいで) 削除されてしまっていたということと、4.4BSD の Intel アーキテクチャ対応が元々かなり不完全であったということがその理由です。 この移行作業は結局 1994 年の 11 月までかかりました。 そして 12 月に &os; 2.0 として公開されました。これは、 かなり粗削りなところが残っていたにもかかわらず、 かなりの成功を収めました。そしてその後に、より信頼性が高く、 そしてインストールが簡単になった &os; 2.0.5 が 1995 年の 6 月に公開されました。</para> <para>これ以降、&os; の安定性、速さや機能は改善され、 リリースが行われてきました。</para> <para>長期的な開発プロジェクトは 10.X-CURRENT 開発ブランチ (トランク) で続けられ、 10.X のスナップショットリリースは、開発の進行状況に応じて <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/snapshots">スナップショットサーバ</link> より継続して入手できます。</para> </sect2> <sect2 xml:id="goals"> <info> <title>&os; プロジェクトの目標</title> <authorgroup> <author> <personname> <firstname>Jordan</firstname> <surname>Hubbard</surname> </personname> <contrib>寄稿: </contrib> </author> </authorgroup> </info> <!-- <para><emphasis>訳: &a.jp.kiroh; 1996 年 9 月 24 日.</emphasis></para> --> <indexterm> <primary>FreeBSD プロジェクト</primary> <secondary>目標</secondary> </indexterm> <para>&os; プロジェクトの目的は、いかなる用途にも使用でき、 何ら制限のないソフトウェアを供給することです。 私たちの多くは、 コード (そしてプロジェクト) に対してかなりの投資をしてきており、 これからも多少の無駄はあっても投資を続けて行くつもりです。ただ、 他の人達にも同じような負担をするように主張しているわけではありません。 &os; に興味を持っている一人の残らず全ての人々に、 目的を限定しないでコードを提供すること。これが、 私たちの最初のそして最大の <quote>任務</quote> であると信じています。そうすれば、コードは可能な限り広く使われ、 最大の恩恵をもたらすことができるでしょう。これが、 私たちが熱烈に支持しているフリーソフトウェアの最も基本的な目的であると、 私は信じています。</para> <indexterm> <primary>GNU General Public License (GPL)</primary> </indexterm> <indexterm> <primary>GNU Lesser General Public License (LGPL)</primary> </indexterm> <indexterm><primary>BSD Copyright</primary></indexterm> <para>私たちのソースツリーに含まれるソースのうち、 GNU 一般公有使用許諾 (GPL) または GNU ライブラリ一般公有使用許諾 (LGPL) に従っているものについては、多少制限が課せられています。ただし、 ソースコードへのアクセスの保証という、 一般の制限とはいわば逆の制限 (訳注1) です。 GPL ソフトウェアの商利用には、そのライセンスにある 複雑な側面が影響してくることがあります。 ですから私たちは、そうすることが合理的であると判断されたときには、 より制限の少ない、BSD 著作権表示を採用しているソフトウェアを選択するようにしています。</para> <para>(訳注1) GPL では、「ソースコードを実際に受け取るか、 あるいは、希望しさえすればそれを入手することが可能であること」 を求めています。</para> </sect2> <sect2 xml:id="development"> <info> <title>&os; の開発モデル</title> <authorgroup> <author> <personname> <firstname>浅見</firstname> <surname>賢</surname> </personname> <contrib>寄稿: </contrib> </author> </authorgroup> </info> <!-- <para><emphasis>訳: &a.asami;. 1996 年 10 月 31 日.</emphasis></para> --> <indexterm> <primary>FreeBSD プロジェクト</primary> <secondary>開発モデル</secondary> </indexterm> <para>&os; の開発は非常に開かれた、柔軟性のあるプロセスです。 <link xlink:href="&url.articles.contributors;/article.html">貢献者リスト</link> を見ていただければわかるとおり、 &os; は文字通り世界中の何千という人々の努力によって開発されています。 &os; の開発環境は、 この何千という開発者がインターネット経由で共同作業できるようになっているのです。 新しい開発者はいつでも大歓迎ですので、&a.hackers; にメールを送ってください。 &a.announce; もありますので、他の &os; ユーザに自分のやっていることを宣伝したい時にはどうぞ使ってください。</para> <para>あと、&os; プロジェクトとその開発プロセスについて、 どなたにも知っていていただきたいのは以下のようなことです。</para> <variablelist> <varlistentry> <term>SVN リポジトリ<anchor xml:id="development-cvs-repository"/></term> <listitem> <para> <indexterm> <primary>CVS</primary> </indexterm> <indexterm> <primary>CVS リポジトリ</primary> </indexterm> <indexterm> <primary>Concurrent Versions System</primary> <see>CVS</see> </indexterm> <indexterm> <primary>Subversion</primary> </indexterm> <indexterm> <primary>Subversion リポジトリ</primary> </indexterm> <indexterm> <primary>SVN</primary> <see>Subversion</see> </indexterm> 長年にわたり &os; のソースツリーは、 ソースコード管理用のフリーソフトウェアである <link xlink:href="http://www.nongnu.org/cvs/">CVS</link> (Concurrent Versions System) によってメンテナンスされてきました。 2008 年 6 月、プロジェクトはソースコード管理のシステムを <link xlink:href="http://subversion.tigris.org">SVN</link> (Subversion) に移行しました。 ソースツリーの急速な増加や、 これまでに蓄積された膨大な量の履歴によって、 <application>CVS</application> の持つ技術的な限界が明かになってきたためです。 ドキュメンテーションプロジェクトと Ports Collection リポジトリも、それぞれ 2012 年 5 月と 7 月に <application>CVS</application> から <application>SVN</application> へと移行しました。 &os; <literal>src/</literal> リポジトリを取得するための情報は <link linkend="synching">ソースツリーの同期</link> の章を、 &os; Ports Collection を取得するための詳細については <link linkend="ports-using">Ports Collection の利用</link> の章をご覧ください。</para> </listitem> </varlistentry> <varlistentry> <term>ソースツリー管理者<anchor xml:id="development-committers"/></term> <listitem> <para><firstterm>コミッター (committers)</firstterm> <indexterm> <primary>コミッター</primary> </indexterm> は Subversion ツリーへの<emphasis>書き込み権限</emphasis>を持っている人、 &os; のソースに変更を加えることができる人です (リポジトリに変更を加えるには、ソースをコントロールする <command>commit</command> というコマンドを使うので、 これらの人々は英語では <quote>committers</quote> と呼ばれます)。 もしバグを見つけたのであれば、<link xlink:href="https://bugs.FreeBSD.org/submit/">障害報告データベース</link> に提出してください。 &os; メーリングリスト、IRC チャネルまたはフォーラムは、 その問題がバグかどうかを確認する助けとなりますので、 障害報告を提出する前に、 これらを使って確認してください。</para> </listitem> </varlistentry> <varlistentry> <term>FreeBSD コアチーム<anchor xml:id="development-core"/></term> <listitem> <para><firstterm>&os; コアチーム</firstterm> <indexterm> <primary>コアチーム</primary> </indexterm> は &os; プロジェクトが会社だとすると取締役会にあたるものです。 コアチームとして一番重要な役割は &os; プロジェクトが全体としてよい方向に向かっていることを確認することです。 責任感あふれる開発者を上記のソースツリー管理者として招くこと、 また仕事上の都合などでコアチームをやめた人たちの後任を見つけることもコアチームの役割です。 現在のコアチームは &os; 開発者 (committer) の中から 2018 年 7 月に選挙によって選出されました。 コアチームを選出するための選挙は、2 年ごとに行なわれています。</para> <note> <para>忘れてほしくないのは、多くの開発者同様に、 コアチームのほとんどは &os; に対してボランティアの立場であり、 &os; プロジェクトからは何ら金銭的な支援を受けていない、 ということです。ですから、 ここでの<quote>責任</quote>は <quote>保証されたサポート</quote>ではありません。 そういう意味で、上記の<quote>取締役会</quote> という例えはあまりよくないかもしれません。むしろ、&os; のために人生を棒に振ってしまった人の集まりといった方が正しいかも…。</para> </note> </listitem> </varlistentry> <varlistentry> <term>その他のコントリビュータ</term> <listitem> <para>最後になりますが、 もっとも重要で多数をしめる開発者はフィードバックやバグフィクスをどんどん送ってくれるユーザ自身です。 &os; の開発に関わっていきたいという人は、 議論の場である &a.hackers; に参加するとよいでしょう。 &os; 関連メーリングリストに関する詳細は、 <xref linkend="eresources"/> をご覧ください。</para> <para><citetitle><link xlink:href="&url.articles.contributors;/article.html">&os; への貢献者リスト</link></citetitle> <indexterm> <primary>コントリビュータ</primary> </indexterm> は日に日に長くなっています。 あなたも今日、何か送ることからはじめてみませんか?</para> <para>もちろん &os; に貢献するには、 コードを書くほかにもいろいろな方法があります。 助けが求められている分野については、<link xlink:href="&url.base;/index.html">&os; プロジェクトのウェブサイト</link> をご覧ください。</para> </listitem> </varlistentry> </variablelist> <para>ひとことで言うと、&os; の開発組織はゆるやかな同心円状になっています。 ともすると中央集権的に見えがちなこの組織は、 &os; の<emphasis>ユーザ</emphasis>がきちんと管理されたコードベースを 容易に追いかけられるようにデザインされているもので、 貢献したいという人を締め出す意図は全くありません! 私たちの目標は安定したオペレーティングシステムと 簡単にインストールして使うことのできる <link linkend="ports">アプリケーション</link>を提供することです。 この方法は、それを達成するために非常にうまくはたらきます。</para> <para>これから &os; の開発にたずさわろうという人に、 私たちが望むことはただ一つです。 &os; の成功を継続的なものにするために、 現在の開発者と同じような情熱を持って接してください!</para> </sect2> <sect2 xml:id="third-party-programs"> <title>サードパーティ製プログラム</title> <para>&os; では基本配布セットに加え、 移植されたソフトウェア集として数千の人気の高いプログラムを提供しています。 この文書を書いている時点で &os.numports; 以上の ports (移植ソフトウェア) が存在します。 ports には http サーバから、ゲーム、言語、 エディタまでありとあらゆるものが含まれています。 ports はオリジナルソースに対する <quote>差分</quote>という形で表現されており、 Ports Collection 全体でも &ports.size; 程度にしかなりません。 ports をコンパイルするには、 インストールしたいと思っているプログラムのディレクトリに移動し、 <command>make install</command> とすると、 あとはすべてシステムがやってくれます。 どの ports もオリジナルの配布セットを動的に取ってくるので、 ディスクは構築したいと思っている ports の分だけを準備しておけば十分です。 ほとんどの ports は、すでにコンパイルされた状態で <quote>package</quote> として提供されており、 ソースコードからコンパイルしたくない場合、これを使うと (<command>pkg install</command> というコマンドで) 簡単にインストールできます。 package と ports に関する詳細は、 <xref linkend="ports"/> をご覧ください。</para> </sect2> <sect2> <title>ドキュメント</title> <para>サポートが行われているすべての &os; では、システムの最初のセットアップ時に、 インストーラ上で、ドキュメントを <filename>/usr/local/share/doc/freebsd</filename> 以下にインストールすることを選択できます。 システムのインストール後でも、 <xref linkend="doc-ports-install-package"/> に記述されている package を使うことで、いつでもドキュメントをインストールできます。 これらのローカルにインストールされたドキュメントは、HTML ブラウザを使って以下の URL から参照できます。</para> <variablelist> <varlistentry> <term>FreeBSD ハンドブック (英文オリジナル)</term> <listitem> <para><link xlink:href="file://localhost/usr/local/share/doc/freebsd/handbook/index.html"><filename>/usr/local/share/doc/freebsd/handbook/index.html</filename></link></para> </listitem> </varlistentry> <varlistentry> <term>FreeBSD に関する FAQ (英文オリジナル)</term> <listitem> <para><link xlink:href="file://localhost/usr/local/share/doc/freebsd/faq/index.html"><filename>/usr/local/share/doc/freebsd/faq/index.html</filename></link></para> </listitem> </varlistentry> </variablelist> <para>また、<uri xlink:href="https://www.FreeBSD.org/">https://www.FreeBSD.org/</uri> にはマスタ (かなり頻繁に更新されます) がありますので、 こちらも参照してください。</para> </sect2> </sect1> </chapter>