diff --git a/ja_JP.eucJP/books/handbook/advanced-networking/chapter.sgml b/ja_JP.eucJP/books/handbook/advanced-networking/chapter.sgml index 8b5536403d..5cc660e3f3 100644 --- a/ja_JP.eucJP/books/handbook/advanced-networking/chapter.sgml +++ b/ja_JP.eucJP/books/handbook/advanced-networking/chapter.sgml @@ -1,2237 +1,2237 @@ 高度なネットワーク 概要 以下の章では, UNIX システム上で頻繁に利用されるネットワーク サービスに言及しています. これはもちろん, あなたの FreeBSD システムでそのようなサービスを設定する場合に 関係してきます. ゲートウェイとルート 原作: &a.gryphon;. 6 October 1995. 訳: &a.jp.yuki;. 6 September 1996. ある計算機が他の計算機をみつけることができるようにするには, ある計算機から他の計算機へ, どのようにたどり着くかを適切に記述するための仕組みが必要です. この仕組みをルーティングと呼びます. ルート(経路)destination (目的地)gateway (ゲートウェイ) の 2 つのアドレスの組で定義します. あなたが destination へアクセスしようとした場合, gateway を通って送られることをこのペアは示しています. destination には個々のホスト, サブネット, デフォルト の 3つの タイプがあります. デフォルトルート は他への経路が適用できない 場合に使われます. のちほどデフォルトルートについて少し述べること するとして, ここでは, 個々のホスト, インタフェース (リンク とも呼ばれます), イーサネットハードウェアアドレスという 3つのタイ プのゲートウェイについて説明します. 以下に示す netstat -r の出力の例を使って, ルーティン グがいろいろと異なっている様子を説明することにします. Destination Gateway Flags Refs Use Netif Expire default outside-gw UGSc 37 418 ppp0 localhost localhost UH 0 181 lo0 test0 0:e0:b5:36:cf:4f UHLW 5 63288 ed0 77 10.20.30.255 link#1 UHLW 1 2421 foobar.com link#1 UC 0 0 host1 0:e0:a8:37:8:1e UHLW 3 4601 lo0 host2 0:e0:a8:37:8:1e UHLW 0 5 lo0 => host2.foobar.com link#1 UC 0 0 224 link#1 UC 0 0 最初の2行はデフォルトルート(次の節で詳しく説明します)と, localhostへの経路を示しています. localhostのためのインタフェース (Netifの欄) はlo0で, これはループバックデバイスとして知られています. 結局のところ戻るだけなので, この destinationへのすべてのトラフィックが 内部的に処理されるのであって, LAN を経由して送られるのではありません. 次の行では 0:e0:... というアドレスに注目しましょう. これはイーサネットハードウェアアドレスです. FreeBSDは自動的に ローカルなイーサネット上の任意のホスト (この例ではtest0) を見つけ, イーサネットインタフェース ed0 の所にそのホストへの経路を直接つけ加えます. タイムアウト時間 (Expireの 欄) も経路のタイプと結びついており, 指定された時間が経過しても応 答がないときに使用します. この場合, 経路情報は自動的に削除されま す. これらのホストは, RIP(Routing Information Protocol) という, 最短パスの判定に基づいてローカルホストへの経路を 決定する仕組みを利用することで認識されます. 更に, FreeBSDではローカルサブネット (10.20.30.25510.20.30 というサブネットに対するブロードキャストアドレスで, foobar.com はこのサブネットに結びつけられているドメイン名) への経路情報も加えることができます. link#1というのは, この計算機の最初のイーサネットカードのことをさします. これら については, 何も追加インタフェースが指定されていないことに気づく でしょう. これらの2つのグループ(ローカルネットワークホストと ローカルサブネット) の両方とも, routed と呼ばれるデーモンによって自動的に経路が設定されます. routed を動かさなければ, 静的に定義した (つまり具体的に設定した) 経路のみ存在することになります. host1 の行は私たちのホストのことで, イーサネットアドレスで示されています. 送信側のホストの場合, FreeBSDはイーサネットインタフェースへ送るのではなく, ループバックインタフェース (lo0)を使います. 2つあるhost2の行は, ifconfigのエイリアス (このようなことをする理由については ethernetの章を参照してください) を使ったとき にどのようになるかを示す例です. lo0の後にある=> は, インタフェースが (このアドレスがローカルなホストを参照しているので) ループバックを使っているというだけでなく, エイリアスになっていることも示しています. このような経路はエイリアスをサポートしている ホストにのみ現れます. ローカルネットワーク上の他のすべてのホストでは 単にlink#1となります. 最後の行 (destinationが224のサブネット) はマルチキャストで扱うものですが, これは他の章で説明します. 他の欄については Flags について説明する必要があります. それぞれの経路は欄に示されているように違った属性を もっています. 以下にいくつかのフラグとこれらが何を意味しているかを示します. U Up: この経路はアクティブです. H Host: 経路の destinationが単一のホストです. G Gateway: この destinationへ送られると, どこへ送れ ばよいかを明らかにして, そのリモートシステムへ送られます. S Static: この経路はシステムによって自動的に生成 されたのではなく, 手動で作成されました. C Clone: マシンに接続したときにこの経路に基づく 新しい経路が作られます. このタイプの経路は通常は ローカルネットワークで使われます. W WasCloned: ローカルエリアネットワーク(Clone) の経路に基づいて 自動的に生成された経路であることを示します. L Link: イーサネットハードウェアへの参照を含む 経路です. デフォルトルート ローカルシステムからリモートホストにコネクションを張る 必要がある場合, 既知のパスが存在するかどうかを確認するためにル ーティングテーブルをチェックします. 到達するためのパスを知っているサブネットの内部に リモートホストがある場合 (Cloned routes), システムはインタフェース から接続できるかどうかをチェックします. 知っているパスがすべて駄目だった場合でも, システムには 最後の切り札の デフォルト ルートがあります. このルートは ゲートウェイルート (普通はシステムに 1つしかありません) の特別なものです. そして, フラグフィールドは必ず c がマークされています. このゲートウェイは, LAN 内のホストにとっ て, 外部 (PPPのリンクを経由する場合や, データラインに接続するハードウェアデバイスなど) へ直接接続するマシンすべてのためのものです. 外部に対するゲートウェイとして機能するマシンで デフォルトルートを設定する場合, デフォルトルートはインターネットサービスプロバイダ (ISP) のサイトのゲートウェイマシンになるでしょう. それではデフォルトルートの一例を見てみましょう. 一般的な構成を示します. [Local2] <--ether--> [Local1] <--PPP--> [ISP-Serv] <--ether--> [T1-GW] ホスト Local1 とホスト Local2 を PPP で ISP のターミナルサーバと接続されているあなたの サイトだとします. ISP はサイト内にロー カルなネットワークを持っていて, そこにはまざまなものがあり, あなたの接続するサーバや ISP のインターネットへの 接続点であるハードウェアデバイス (T1-GW) などがあります. あなたのマシンのデフォルトルートは それぞれ次のようになります. host default gateway interface Local2 Local1 ethernet Local1 T1-GW PPP なぜ (あるいは, どうやって) Local1 の デフォルトゲートウェイをISPのサーバでなく T1-GWにセットするのか という質問がよくあります. コネクションのローカルの側については, PPPのインタフェースは ISPのローカルネットワーク上のアドレスを用いているため, ISPのローカルネットワーク上のすべてのマシンへの経路は 自動的に生成されています. つまり, あなたのマシンは, どのようにT1-GW まで届くかという経路を既に知っていることになりますから, ISPサーバに媒介的なトラフィックをかける必要はありません. 最後になりましたが, 一般的にローカルネットワークでは ...1 というアドレスをゲートウェイアドレスとして使います. ですから (同じ例を用います), あなたのclass-Cのアドレス空間が 10.20.30で ISPが 10.9.9を用いている場合, デフォルトルートは次のようになります. Local2 (10.20.30.2) --> Local1 (10.20.30.1) Local1 (10.20.30.1, 10.9.9.30) --> T1-GW (10.9.9.1) マルチホームホスト ここで扱うべき他のタイプの設定があります. それは2つの異なるネットワークにまたがるホストです. 技術的にはゲートウェイとして機能するマシン (上 の例では PPPコネクションを用いています) はマルチホームホストで す. しかし実際にはこの言葉は, 2つのローカルエリアネットワーク上のサ イトであるマシンを指す言葉としてのみ使われます. 2枚のイーサネットカードを持つマシンが, 別のサブネット 上にそれぞれアドレスを持っている場合があります. あるいは, イーサネットカードを1枚持っているマシンで, ifconfigのエイリアスを使っているかもしれません. 物理的に分かれている2つのイーサネットのネットワークが使われて いるならば前者が用いられます. 後者は, 物理的には1つのネットワ ークセグメントで, 論理的には分かれている 2つのサブネットとする 場合に用いられます. どちらにしても, このマシンがお互いのサブネットへのゲートウェイ (inbound route) として定義されていることが分かるように, おのお ののサブネットでルーティングテーブルを設定します. このマシンが 2 つのサブネットの間のブリッジとして動作するという構成は, パケ ットのフィルタリングを実装する必要がある場合や, 一方向または双 方向のファイアウォールを利用したセキュリティを構築する場合によ く用いられます. ルーティングの伝播 すでに外部との経路をどのように定義したらよいかは 説明しました. しかし外部から私たちのマシンをどのようにして 見つけるのかについては説明していません. ある特定のアドレス空間 (この例では class-C のサブネット) におけるすべてのトラフィックが, 到着したパケットを内部で転送するネ ットワーク上の特定のホストに送られるようにルーティングテーブル を設定することができるのは分かっています. あなたのサイトにアドレス空間を割り当てる場合, あなたのサブネットへのすべてのトラフィックがすべて PPPリンクを通じてサイトに送 ってくるようにサービスプロバイダはルーティングテーブルを設定し ます. しかし, 国境の向こう側のサイトはどのようにしてあなたの ISPへ送ることを知るのでしょうか? 割り当てられているすべてのアドレス空間の経路を維持する (分散している DNS 情報とよく似た) システムがあり, そのインターネット バックボーンへの接続点を定義しています. バックボーン とは国を越え, 世界中のインターネットのトラフィックを運ぶ主要 な信用できる幹線のことです. どのバックボーンマシンも, あるネットワークから特定のバックボーンのマシンへ 向かうトラフィックと, そのバックボーンのマシンからあなたのネットワークに届くサービス プロバイダまでのチェーンのマスタテーブルのコピーを持っていま す. あなたのサイトが接続(プロバイダからみて内側にある ことになります) したということを, プロバイダからバックボー ンサイトへ通知することはプロバイダの仕事です. これが経 路の伝搬です. トラブルシューティング ルーティングの伝搬に問題が生じて, いくつかのサイトが 接続をおこなうことができなくなることがあります. ルーティングがどこでおかしくなっているかを明らかにするのに 最も有効なコマンドはおそらく &man.traceroute.8; コマンドでしょ う. このコマンドは, あなたがリモートマシンに対して接続をおこなう ことができない(例えば &man.ping.8; に失敗するような場合) 場合も, 同じように有効です. &man.traceroute.8; コマンドは, 接続を試みているリモートホストを引数にして実行します. 試みているパスの経由するゲートウェイホストを表示し, 最終的には目的のホストにたどり着くか, コネクションの欠如によって終ってしまうかのどちら かになります. より詳しい情報は, &man.traceroute.8; のマニュアルページをみてください. Bridging Written by Steve Peterson steve@zpfe.com. はじめに IP サブネットを作成し, それらのセグメントをルータを 使って接続したりせずに, (Ethernet セグメントのような) 物理ネットワークを二つのネットワークセグメントに分割することは とても有効な場合があります. このような二つのネットワークを繋ぐデバイスはブリッジと呼ばれます. そして, 二つのネットワークインターフェイスカードを持つ FreeBSD システムは, ブリッジとして動作することができます. ブリッジは, 各ネットワークインターフェイスに繋がる デバイスの MAC 層のアドレス (例えば Ethernet アドレス) を記憶します. ブリッジはトラフィックの送信元と受信先が異なったネットワーク上に ある場合にのみ, トラフィックを転送します. すなわち, ブリッジはポート数の少ない Ethernet スイッチ だ, ということができます. ブリッジがふさわしい状況とは 今日ブリッジが活躍する場面は大きく分けて二つあります. トラフィックの激しいセグメント ひとつは, 物理ネットワークセグメントがトラフィック 過剰になっているが, なんらかの理由によりネットワークを サブネットに分け, ルータで接続することができない場合です. 編集部門と製作部門がおなじサブネットに同居している 新聞社を例に考えてみましょう. 編集部門のユーザはファイルサーバとして全員サーバ A を利用し, 製作部門のユーザはサーバ B を利用します. すべてのユーザを接続するのには Ethernet が使われており, 高負荷となったネットワークは遅くなってしまいます. もし編集部門のユーザを一つのネットワークセグメントに 分離することができ, 製作部門もユーザも同様にできるのなら, 二つのネットワークセグメントをブリッジで繋ぐことができます. ブリッジの "反対" 側へ向かうネットワークトラフィックだけが 転送され, 各ネットワークセグメントの混雑は緩和されます. パケットフィルタ/帯域制御用ファイアウォール もうひとつは, IP Masquerading (NAT) を使わずに ファイアウォール機能を利用したい場合です. ここでは DSL もしくは ISDN で ISP に接続している 小さな会社を例にとってみましょう. この会社は ISP から 13 個のグローバル IP アドレスの割り当て を受けており, ネットワーク内には 10 台の PC が存在します. このような状況では, サブネット化にまつわる問題から ルータを用いたファイアウォールを利用することは困難です. ブリッジを用いたファイアウォールなら, IP アドレスの問題を気にすること無く, DSL/ISDN ルータの 下流側に置くように設定できます. ブリッジを設定する ネットワークインターフェイスカードの選択 ブリッジを利用するには少なくとも二つのネットワークカードが 必要です. 残念なことに, FreeBSD 4.0 ではすべてのネットワークインターフェイス カードがブリッジ機能をサポートしているわけではありません. カードがサポートされているかどうかについては &man.bridge.4; を参照してください. 以下に進む前に, 二つのネットワークカードをインストールして テストしてください. カーネルコンフィグレーションの変更 カーネルでブリッジ機能を有効にするには - option BRIDGE + options BRIDGE という行をカーネルコンフィグレーションファイルに追加して カーネルを再構築してください. ファイアウォール機能 ブリッジと同時にファイアウォール機能も利用しようとしている 場合には, IPFIREWALL オプションも指定する必要があります. ブリッジをファイアウォールとして設定する際の一般的な 情報に関しては, を参照してください. IP 以外のパケット (ARP など) がブリッジを通過するように するためには, ドキュメント化されていないファイアウォール用 オプションを設定する必要があります. このオプションは IPFIREWALL_DEFAULT_TO_ACCEPT です. この変更により, デフォルトではファイアウォールがすべての パケットを accept するようになることに注意してください. この設定を行う前に, この変更が自分のルールセットにどのような 影響をおよぼすかを把握しておかなければなりません. 帯域制御機能 ブリッジで帯域制御機能を利用したい場合, カーネルコンフィグレーションで DUMMYNET オプションを加える必要があります. 詳しい情報に関しては &man.dummynet.4; を参照 してください. ブリッジを有効にする ブリッジを有効にするには, /etc/sysctl.conf に以下の行を加えてください: net.link.ether.bridge=1 ブリッジを経由したパケットを ipfw でフィルタしたい場合には, net.link.ether.bridge_ipfw=1 という行も付け加える必要があります. パフォーマンス 私のブリッジ/ファイアウォールは Pentium 90 で, 3Com 3C900B と 3c905B を使っています. 防護される側のネットワークは 10Mbps の half duplex で, ブリッジとルータ (Cisco 675) の間は 100Mbps full duplex で 動作しています. パケットフィルタを利用しない場合, 防護されている 10Mbps ネットワークから Cisco 675 への ping では, ブリッジにより 0.4 ミリ秒の遅延が発生しています. その他の情報 ネットワークからブリッジに telnet したい場合, ネットワークカードの一つに IP アドレスを割り当てれば OK です. 一般的に, 両方のカードに IP アドレスを割り当てるのは よいアイデアではないとされています. ネットワーク内に複数のブリッジを設置する場合, 任意のワークステーション間で一つ以上の経路を持つことは できません. 技術的には, これは spanning tree link management はサポートされていない, ということを意味します. NFS Written by &a.unfurl;, 4 March 2000. FreeBSD がサポートしている多くのファイルシステムの中でも, NFS, すなわち Network File System は極めてユニークな存在です. NFS はあるマシンから他のマシンへと, ネットワークを通じて ディレクトリとファイルを共有することを可能にします. NFS を使うことで, ユーザやプログラムはリモートシステムのファイルを, それがローカルファイルであるかのようにアクセスすることができます. NFS には以下の利点があります: 一般的に使われるデータを単一のマシンに納める ことができ, ネットワーク上のユーザはデータにアクセスできる ため, ローカルワークステーションは多くのディクスを 必要としません. ネットワーク上のすべてのマシンに, ユーザが独自のホームディレクトリを持つ必要がありません. 一旦 NFS 経由でアクセスできるディレクトリができれば, どこからでもアクセス可能です. フロッピーや CD-ROM ドライブなどのストレージデバイスを, 追加のハードウェアなしにネットワーク上の他のマシンに 使ってもらうことができます. どのようにして動作するのか NFS はクライアント, サーバの二つの部分から 構成されます. これは 需要(want)/供給(have) の関係として考えることができます. クライアントはサーバが 供給 している データに対する 需要 があります. サーバはそのデータをクライアントと共有します. このシステムが適切に機能するために, いくつかのプロセスが 設定され正しく動作していなければなりません. サーバは以下のデーモンを動作させなければなりません: nfsd - NFS クライアントからの リクエストを処理する NFS デーモン. mountd - nfsd から渡された リクエストを実際に実行する NFS マウントデーモン. クライアント側ではデーモンを一つ実行する必要があります: nfsiod - NFS サーバからのリクエストを 処理する NFS 非同期 I/O デーモン. NFS を設定する 幸運なことに, FreeBSD システムで設定を行うのは簡単です. 実行させなければならないプロセスは, /etc/rc.conf ファイルをちょっと編集することでブート時から実行させる ことができます. NFS サーバでは, 以下の設定が必要です: nfs_server_enable="YES" nfs_server_flags="-u -t -n 4" mountd_flags="-r" mountd は NFS サーバが有効になっている 場合, 自動的に実行されます. nfsd への , フラグは クライアントに UDP と TCP のサービスを提供することを指示します. フラグは nfsd が 4 つのコピーを立ち上げることを指示します. クライアント側では, 以下のようにします: nfs_client_enable="YES" nfs_client_flags="-n 4" nfsd と同様に, nfsiod が 4 つのコピーを立ち上げることを指示します. 最後に /etc/exports という 設定ファイルを作成します. exports ファイルはサーバのどのファイルシステムが 共有されるのか (exported といいます), またどのクライアントが共有できるのかを指定します. ファイル中の各行は, 共有されるファイルシステムを 指定します. ファイル中で指定できるオプションはたくさんありますが, そのうちの少ししか使うことはないでしょう. より細かいことに関しては &man.exports.5; マニュアルページをお読み下さい. いくつか /etc/exports の設定例 を示します: 以下の設定は, サーバと同じドメイン名(ドメイン名が無いので)か, /etc/hosts に記述のある三つのマシン に対して, /cdrom を export します. オプションは共有されるファイルシステムを 読み込み専用にします. このフラグにより, リモートシステムは共有されたファイルシステム にたいして何の変更も行えなくなります. /cdrom -ro moe larry curly 以下の設定は, IP アドレスによる三つのホストに対して /home を export します. この設定はプライベートネットワークで DNS が走っていない 場合に便利な設定でしょう. フラグは指定されたファイルシステム 以下のディレクトリに対しても同様に export します. /home -alldirs 10.0.0.2 10.0.0.3 10.0.0.4 以下の設定は, サーバとは異なるドメイン名の二つの マシンに対して /a を export します. フラグは, リモートマシンの root ユーザが共有されたファイルシステムに root として書き込むことを 許可します. -maproot=0 フラグが無ければ, リモートマシンの root 権限を 持っていても共有されたファイルシステム上のファイルを変更する ことはできません. /a -maproot=0 host.domain.com box.example.com クライアントが export されたファイルシステムを共有 する際には, そのような権限が与えられていなければなりません. /etc/exports ファイルに クライアントが含まれているかどうか確認してください. 必要な変更はすべて行ったので, FreeBSD を再起動してブート時からすべてが起動するようにするか, root で以下のコマンドを実行します: NFS サーバでは: &prompt.root; nfsd -u -t -n 4 &prompt.root; mountd -r NFS クライアントでは: &prompt.root; nfsiod -n 4 これでリモートのファイルシステムを実際にマウントする 準備ができました. やり方は二通りあります. この例では, サーバの名前は server で, クライアントの名前は client とします. リモートファイルシステムを一時的にマウントするだけ, もしくは設定をテストするだけなら, クライアント上で root として以下のコマンドを実行してください: &prompt.root; mount server:/home /mnt これにより, クライアントの /mnt ディレクトリにサーバの /home が マウントされます. もしすべてが正しく設定されていれば, クライアントの /mnt に, サーバにあるファイルすべてが見えるようになっているはずです. リモートファイルシステムを今後も (リブートする度に) マウントしたいなら, /etc/fstab ファイルに設定を追加する必要があります. 例としてはこのようになります: server:/home /mnt nfs rw 0 0 ほかのオプションに関しては &man.fstab.5; マニュアル ページをお読み下さい. 典型的な使い方 NFS にはいくつかすてきな使い方があります. 私は自分が管理している LAN でそれらを利用しています. そのうちにいくつかをここで紹介しましょう. ネットワークには幾つかのマシンがありますが, CD-ROM ドライブを持っているのは一台だけです. なぜかって? それは一台の CD-ROM ドライブをほかのマシンと NFS 経由で共有しているからです. フロッピードライブについても同じことがいえます. ネットワーク内に多くのマシンがあると, 様々な場所に ちらばる個人的なファイルは日に日に古くなってしまいます. 私はすべてのユーザのホームディレクトリを格納する, 中心となる NFS サーバを用意し, LAN 上の残りのマシンと 共有しています. そうすることで, どこにログインしても, 同じホームディレクトリを使うことができるのです. マシンのひとつに FreeBSD を再インストールするなら, NFS こそその方法です. ディストリビューション CD をファイル サーバに入れ, 再インストールを実行するだけです. 共用の /usr/ports/distfiles ディレクトリを用意して, すべてのマシンで共有しています. この方法だと, 別のマシンで既にインストールしたことのある port をインストールする場合, 再びすべてのソースをダウンロードする 必要がなくなります. Problems integrating with other systems 原作: &a.jlind;. 訳: &a.jp.tomo;. 6 September 1996. ISA用のイーサネットアダプタの中には性能が悪いため, ネットワーク, 特に NFS で深刻な問題がおきるものがあります. これは FreeBSD に限ったことではありませんが, FreeBSD でも起こり得ます. この問題は, (FreeBSDを使用した) PC がシリコン・グラフィックス社や サン・マイクロシステムズ社などの高性能な WS にネットワーク接続されている場合に頻繁に起こります. NFS マウントはうまく行きます. また, いくつかの操作もうまく働きますが, 他のシステム (WS) に対する要求や応答は続いていても, 突然サーバが クライアントの要求に対して反応しなくなります. これは, クライアントが FreeBSD か上記の WS であるとき, にクライアント側に起きる現象です. 多くのシステムでは, いったんこの問題が現われると, 行儀良くクライアントを終了する手段はありません. NFS がこの状態に陥ってしまうと, 正常に戻すことはできないため, 多くの場合, クライアントを強制終了し, 再び実行することが唯一の解決法となります. 正しい解決法は, より高性能のイーサネットアダプタをFreeBSDシステムに インストールすることですが, 満足な操作ができるような簡単な方法があります. もし, FreeBSDシステムがサーバになるのなら, クライアントからのマウント時に オプションをつけて下さい. もしFreeBSDシステムがクライアントになる のなら, NFSファイルシステムを オプションつきでマウントして下さい. これらのオプションは自動的にマウントをおこなう場合には クライアントの fstab エントリの4番目のフィールドに指定してもよいですし, 手動マウントの場合は mount コマンドの パラメータで指定してもよいでしょう. NFSサーバとクライアントが別々のネットワーク上にあるような 場合, これと間違えやすい他の問題が起きることに注意して下さい. そのような場合は, ルータが必要な UDP 情報をきちんと ルーティングしているかを確かめて下さい. そうでなければ, たとえあなたが何をしようと解決できないでしょう. 次の例では, fastwsは高性能のWSのホスト (インタフェース)名で, freeboxは低性能のイーサネットアダプタを備えた FreeBSDシステムのホスト(インタフェース)名です. また, /sharedfs はエクスポートされる NFS ファイルシステムであり (man exports を見て下さい), /project はエクスポートされたファイルシステムの クライアント上のマウントポイントとなります. 全ての場合において, , といった追加オプションが アプリケーションにより要求されるかもしれないことに 注意して下さい. クライアント側 FreeBSD システム (freebox) の例は: freebox の /etc/fstab に次のように書いて下さい: fastws:/sharedfs /project nfs rw,-r=1024 0 0 freebox 上で手動で mount コマンドを実行する場合は次のようにして下さい: &prompt.root; mount -t nfs -o -r=1024 fastws:/sharedfs /project サーバ側FreeBSDシステムの例は: fastws/etc/fstab に次のように書いて下さい: freebox:/sharedfs /project nfs rw,-w=1024 0 0 fastws 上で手動で mount コマンドで実行する場合は次のようにして下さい: &prompt.root; mount -t nfs -o -w=1024 freebox:/sharedfs /project 近いうちにどのような 16 ビットのイーサネットアダプタでも 上記の読み出し, 書き込みサイズの制限なしの操作ができるようになるでしょう. 失敗が発生したとき何が起きているか関心のある人に, なぜ回復不可能なのかも含めて説明します. NFSは通常 (より小さいサイズへ分割されるかもしれませんが) 8Kのブロック サイズで働きます. イーサネットのパケットサイズは最大1500バイト程度なので, 上位階層のコードにとっては1つのユニットのままなのですが, NFS ブロックは 複数のイーサネットパケットに分割されます. そして受信され, 組み立て直されてから肯定応答 されなければなりません. 高性能のWSは次々に NFSユニットを構成するパケットを, 基準の範囲内で間隔を詰めて次々に送り出すことができます. 小さく, 容量の低いカードでは, 同じユニットの 前のパケットがホストに転送される前に, 後のパケットがそれを 踏みつぶしてしまいます. このため全体としてのユニットは再構成もされないし, 肯定応答もされません. その結果, WSはタイムアウトして再送を試みますが, 8Kのユニット全体を再送しようとするので, このプロセスは 際限無く繰り返されてしまいます. ユニットサイズをイーサネットのパケットサイズの 制限以下に抑えることにより, 受信された完全な イーサネットパケットは個々に肯定応答を受けられることが 保証されるので, デッドロック状態を避けることができるようになります. 高性能のカードを使っている場合でも, 高性能な WS が力任せに次々と PC システムにデータを送ったときには 踏みつぶし が起きるかもしれません. そのような踏みつぶし は NFS ユニット では保証されていません. 踏みつぶしが起こったとき, 影響を受けたユニットは再送されます. そして受信され, 組み立てられ, 肯定応答される公平な機会が与えられるでしょう. Diskless operation 原作: &a.martin; 訳: &a.jp.yasu; netboot.com/netboot.rom によって, ディスクのないクライアントでネットワーク経由で FreeBSD マシンのブートを行い FreeBSD を走らせることができます. 2.0 ではローカルなスワップを持つことができます. NFS 経由のスワッピングもサポートされています. サポートされているイーサネットカード: Western Digital/SMC 8003, 8013, 8216 とその互換ボード, NE1000/NE2000 とその互換カード (再コンパイルが必要) セットアップの手順 サーバにするマシンを見つけます. このマシンには, FreeBSD 2.0のバイナリとbootpを 記憶するだけの十分なディスクスペースが必要です. tftp と NFS も使えます. テストしたマシン: HP9000/8xx / HP-UX 9.04以降 (9.04以前では動きません) Sun/Solaris 2.3. (bootpが必要) クライアントにIP,gateway,netmaskを提供する bootpサーバをセットアップします. diskless:\ :ht=ether:\ :ha=0000c01f848a:\ :sm=255.255.255.0:\ :hn:\ :ds=192.1.2.3:\ :ip=192.1.2.4:\ :gw=192.1.2.5:\ :vm=rfc1048: クライアントにブート情報を提供する TFTP サーバを (bootp サーバと同じマシンに) セットアップします. このファイルの名前は, cfg.X.X.X.X (もしくは /tftpboot/cfg.X.X.X.X )で, ここで X.X.X.X はクライアントの IP アドレスです. このファイルの内容は netboot コマンドで有効です. 2.0では, netboot は以下のようなコマンドを持ちます: help helpリストの表示 ip クライアントのIPアドレスの表示/セット server bootp/tftp サーバのアドレスの表示/セット netmask netmaskの表示/セット hostname name hostnameの表示/セット kernel カーネル名の表示/セット rootfs root ファイルシステムの表示/セット swapfs swap ファイルシステムの表示/セット swapsize diskless swapsize を KBytes単位でセット diskboot ディスクからのブート autoboot ブートプロセスの続行 trans | トランシーバのオン|オフ flags ブートフラグの設定 完全にディスクレスな場合の一般的な cfg ファイルは以下のようになります: rootfs 192.1.2.3:/rootfs/myclient swapfs 192.1.2.3:/swapfs swapsize 20000 hostname myclient.mydomain ローカルに swap を持つマシンについては以下のようになります: rootfs 192.1.2.3:/rootfs/myclient hostname myclient.mydomain NFS サーバがクライアントにroot(必要ならswapも) ファイルシステムをexportしているか, また, クライアントがこれらのファイルシステムに ルートアクセスできるか確認します. FreeBSDにおける一般的な /etc/exports ファイルは 以下のようになります: /rootfs/myclient -maproot=0:0 myclient.mydomain /swapfs -maproot=0:0 myclient.mydomain そして, HP-UX側では以下のようになります: /rootfs/myclient -root=myclient.mydomain /swapfs -root=myclient.mydomain NFS経由でスワッピングを行う場合 (完全にディスクレスな場合の設定), クライアントが使用する swap ファイルを dd で作成します. もし, swapfs コマンドが上記の例のように 引数 /swapfsを持ちそのサイズが 20000 である場合, myclientに対するスワップファイルは /swapfs/swap.X.X.X.X で呼び出されます. ここで X.X.X.X はクライアントの IP アドレスです. 例: &prompt.root; dd if=/dev/zero of=/swapfs/swap.192.1.2.4 bs=1k count=20000 また, スワッピングが開始されるとクライアントの スワップスペースはセンシティブな情報を含むようになるので, 不正なアクセスを防止するため, このファイルへの 読み書きのアクセス制限がなされていることを確認して下さい: &prompt.root; chmod 0600 /swapfs/swap.192.1.2.4 クライアントがそれぞれのrootファイルシステムとして使う ディレクトリにrootファイルシステムを展開します. (上記の例では/rootfs/myclient). HP-UX システム: サーバはHP9000/800 シリーズのマシンで, HP-UX 9.04 以降が必要です. これ以前のバージョンでは NFS を経由するデバイスファイルが作成ができません. /rootfs/myclient/dev を 展開する際に, いくつかのシステム (HPUX) では FreeBSD に合った デバイスファイルが作成されないので 注意してください. その際には最初の起動時にシングルユーザモードに 移行して (ブートの段階でCtrl-Cを押す), /dev に移って sh ./MAKEDEV all として, クライアントからこれを 修正してください. クライアントで netboot.com を実行するか, netboot.rom ファイルから EPROMを作成します. <filename>/</filename> および <filename>/usr</filename> ファイルシステムを共有して使用する 今のところ, これを行う公式に認められた方法はありませんが, 私はそれぞれのクライアントで /usr ファイルシステムと個々の / ファイルシステムを共有して使っています. どなたかこれをきちんと行うやり方の提案がありましたら, 私に, もしくは &a.core; グループに知らせてください. 特定の設定についてnetbootをコンパイルする /sys/i386/boot/netboot/Makefile の中の設定を変更して コンパイルすることで, netbootでNE1000/2000 カードをサポートします. このファイルの先頭にあるコメントを見てください. ISDN 最終更新: &a.wlloyd;. 訳: &a.jp.kiroh;. 11 December 1996. ISDN 技術とハードウェアに関しては, Dan Kegel's ISDN Page がよい参考になるでしょう. ISDN の導入手順は, 簡単にいって以下のようになります. ヨーロッパ在住の方は, ISDN カードの節に進んでください. ISDN を使って, インターネットプロバイダに(専用線は使用せず), ダ イアルアップ接続しようとしている場合は, ターミナルアダプタの使用を考えてみてください. この方法はもっとも柔軟性があり, プロバイダを変更した場 合の問題も少ないでしょう. 2つの LAN の間を接続しようする場合や, ISDN 専用線を使用する場合 には, スタンドアローンルータ/ブリッジの使用を勧めます. どの方法を用いるかを決定するには, 費用が重要な要素になってきます. 以下に, 最も安価な方法から, 高価な方法まで順に説明していきます. ISDN カード 著者:&a.hm;. このセクションの記述は, DSS1/Q.931 ISDN 標準がサポートされている国のユーザにのみ有効です. 最近増えてきている PC ISDN カードのうちいくつかは, FreeBSD 2.2.x 以降で isdn4bsd ドライバパッケージによりサポートされています. 依然として開発中ではありますが, ヨーロッパ中でうまく動作しているという報告があります. 最新の isdn4bsd は, ftp://isdn4bsd@ftp.consol.de/pub/ から入手できます. この ftp サイトでは, ユーザ名として isdn4bsd を使い, パスワードにメールアドレスを使ってログインする 必要があります. ログインできたら pub ディレクトリに移動してください. ユーザー名 ftpanonymous によるログインでは, 必要なファイルにたどりつけません. isdn4bsd は, IP over raw HDLC もしくは同期 PPP を利用して他の ISDN ルータと接続できます. 留守番電話アプリケーションも使えます. Siemens ISDN チップセット (ISAC/HSCX) を使用したものを主に多くのカードがサポートされています. 他のチップセット (Motorola, Cologn ChipDesigns) のサポートは現在開発中です. サポートされるカードの最新のリストは, README を参照してください. 他の ISDN プロトコルを追加したい場合や, サポートされていない ISDN PC カード サポートしたい場合など isdn4bsd を拡張したい場合は, hm@kts.org までご連絡ください. majordomoによるメーリングリストが利用できます. 参加するには, 本文に subscribe freebsd-isdn と記入したメールを &a.majordomo; 宛てに送ってください. ISDN ターミナルアダプタ ターミナルアダプタ (TA) はISDN に対して, 通常の電話線に対するモデムに相当するものです. ほとんどの TA は, 標準のヘイズ AT コマンドセットを使用しているので, 単にモデムと置き換えて使うことができます. TA は, 基本的にはモデムと同じように動作しますが, 接続方法は異なり, 通信速度も古いモデムよりはるかに速くなります. PPP の設定を, モデムの場合と同じように行ってください. とくにシリアル速度を 使用できる最高速度に設定するのを忘れないでください. プロバイダへの接続に TA を使用する最大のメリットは, 動的 PPP を行えることです. 最近 IP アドレスが不足してきているため, ほとんどのプロバイダは, 専用の IP アドレスを割り当てないようになっています. ほとんどのスタンドアローンルータは, 動的 IP アドレスに対応していません. 訳注: 最近の ISDN ルータでは, IP アドレスの動的割り当てに対応しているものも多いようです. ただし制限がある場合もありますので, 詳しくはメーカ に問い合わせてください. TA を使用した場合の機能や接続の安定性は, 使用している PPP デーモンに完全に依存します. そのため, FreeBSD で PPP の設定が完了していれば, 使用している既存のモデムを ISDN の TA に簡単にアップグレードすることができます. ただし, それまでの PPP のプログラムに問題があった場合, その問題は TA に置き換えてもそのまま残ります. 最高の安定性を求めるのであれば, ユーザープロセス iijPPP ではなく, カーネル PPPを使用してください. 以下の TA は, FreeBSD で動作確認ずみです. Motorola BitSurfer および Bitsurfer Pro Adtran 他の TA もほとんどの場合うまく動作するでしょう. TA のメーカーでは, TA がほとんどの標準モデム AT コマンドセットを受け付けるようにするよう, 努力しているようです. 外部 TA を使う際の最大の問題点は, モデムの場合と同じく良いシリアルカー ドが必要であるということです. シリアルデバイスの詳細, そして非同期シリアルポートと同期シリアルポートの差については, ハンドブックのシリアルポート の 節を参照してください. 標準の PC シリアルポート(非同期)に接続された TA は, 128Kbs の接続を行っていても, 最大通信速度が 115.2Kbs に制限されてしまいます. 128Kbs の ISDN の性能を最大限に生かすためには, TA を同期シリアルカードに接続しなければなりません. 内蔵 TA を購入して, 同期/非同期問題を片付けてしまおうとは思わないでく ださい. 内蔵 TA には, 単に標準 PC シリアルポートのチップが内蔵されてい るだけです. 内蔵 TA の利点といえば, シリアルケーブルを買わなくていいと いうことと, 電源コンセントが一つ少なくて済むということくらいでしょう. 同期カードと TA の組合せは 386 の FreeBSD マシンの場合でも, スタンドア ローンのルータと同程度の速度は確保できます. またこの組合せでは, ルータより柔軟な設定が可能です. 同期カード/TA を選ぶか, スタンドアローンルータを選ぶかは, 多分に宗教的な問題です. メーリングリストでもいくつか議論がありました. 議論の内容に ついては, archives を参照してください. スタンドアローン ISDN ブリッジ/ルータ ISDN ブリッジやルータは, OS 特有のものではありません. もちろん FreeBSD 特有のものでもありません. ルーティングやブリッジング技術に関する詳細は, ネットワークの参考書をご覧ください. このページでは, ルータとブリッジにどちらでもあてはまるように記述します. ISDN ルータ/ブリッジは, ローエンドの製品のコストが下がってきていることもあり, より一般的に使用されるようになるでしょう. ISDN ルータは, 外見は小さな箱で, ローカルのイーサネットネットワーク(もしくはカード)と直接, 接続します. また, 自身で他のブリッジ/ルータとの接続を制御します. PPP や他のプロトコルを使用するためのソフトウェアは, すべて組み込まれています. ルータは, 完全な同期 ISDN 接続を使用するため, 通常の TA と比較してスループットが大幅に向上します. ISDN ルータ/ブリッジを使用する場合の最大の問題点は, 各メーカーの製品間に相性の問題がまだ存在することです. インターネットプロバイダとの接続を考えている場合には, プロバイダと相談することをお勧めします. 事務所の LAN と家庭の LAN の間など, 二つの LAN セグメントの間を接続しようとしている場合は, ブリッジ/ルータの使用がもっともメンテナンスが 簡単で, 努力が少なくてすむ方法です. 両側の機材を購入するのであれば, メーカー間の接続性の問題もないでしょう. たとえば家庭の LAN や出張所の LAN を本社のネットワークに接続するためには, 以下のような設定が使用できます. 出張所 LAN または 家庭 LAN ネットワークは, 10 Base T イーサネットです. ルータとネットワークの間は, 必要に応じて AUI/10BT トランシーバを使って接続します. ---Sun ワークステーション | ---FreeBSD マシン | ---Windows 95 (別に勧めているわけじゃありません) | スタンドアローンルータ | ISDN BRI ライン 家庭/出張所 LAN で, 一台しかコンピュータを接続しないのであれば, クロス のツイストペアケーブルを使用して, スタンドアローンルータと直結も可能です. 本社 LAN や他の LAN ネットワークは, ツイストペアイーサネットです. -------Novell サーバ | | |ハ ---Sun | | | ---FreeBSD | | |ブ ---Windows 95 | | |___---スタンドアローンルータ | ISDN BRI ライン ほとんどのルータ/ブリッジでは, 別々の二つのサイトに対して, 同時にそれ ぞれ独立した二つの PPP 接続が可能です. これは, 通常の TA ではサポートされない機能で, ルータ/ブリッジ接続の大きな利点です (シリアルポートを 二つもつ特殊(そして高価な) TA では可能です). チャンネル割り当てや MPP などと混同しないでください. これは, 大変便利な機能です. たとえば事務所で専用線 ISDN 接続を使用していて, 別の ISDN ラインを購入したくないとします. この場合, 事務所のルータは, 一つの専用線 B チャンネル接続(64Kbs)を維持しつつ, 別 の B チャンネルを他の用途に使用することができます. たとえば, 他の場所 とのダイアルイン, ダイアルアウトに使用したり, バンド幅を増やすために, インターネットとの接続への動的に割り当て(MPP など)に使用したりすることが可能です. またイーサネットブリッジは, IP パケットだけでなく IPX/SPX などすべての プロトコルのパケットを中継することが可能です. NIS/YP 原作: &a.unfurl;, 2000 年 1 月 21 日. NIS/YP とは? NIS は RPC を使ったクライアント/サーバシステムです. これを 使うことで. NISドメイン内のマシン間で共通の設定ファイルを共有すること ができます. また, NIS を使うことでシステム管理者は最小限の設定データ で NIS クライアントを立ち上げることができ, 1 ヶ所から設定データの 追加, 削除, 変更が可能です. 動作のしくみ NIS 環境にあるホストは, 次の 3 種類に分類されます. それは, マスターサーバ, スレーブサーバ, クライアントです. サーバは, ホストの設定情報の中心的な情報格納庫の役割をします. マスターサーバは元となる信頼できる情報を保持し, スレーブサーバは, 冗長性を確保するため, この情報をミラーします. そしてクライアントは, サーバから情報の提供を受けて動作します. この方法を用いることで, 数多くのファイルにある情報が共有できます. よく NIS で共有されるのは, master.passwdgroup, hosts といったファイルです. クライアント上のプロセスで, 通常ローカルのファイルにある情報が必要 となったとき, クライアントは接続しているサーバに問い合わせを行い, その情報を得ます. NIS/YP を使う 計画を立てる もし NIS によるシステム管理の設定を行なうのが初めてなら, どのようにしたいのか, ひととおり最後まで考えてみることをお勧めします. ネットワークの規模によらず, いくつか決めるべきことがあるためです. NIS ドメイン名を決める ここでいうドメイン名は, 今まであなたが使っていた, いわゆる ドメイン名 と呼んでいたものとは違います. 正確には NIS ドメイン名 と呼ばれます. クライアントがサーバに情報を要求するとき, その要求には自分が属する NIS ドメインの名前が含まれています. これは, 1 つのネットワークに複数のサーバがある場合に, どのサーバが要求を処理すれば良いかを決めるために使われます. NIS ドメイン名とは, 関連のあるホストをグループ化するための名前である, と考えると良いでしょう. 組織によってはインターネットのドメイン名を NIS ドメイン名に使っているところがありますが, これはネットワークのトラブルをデバッグするときに混乱の原因となるため, お勧めできません. NIS ドメイン名はネットワーク内で一意なければならないので, ドメイン名がドメインに含まれるマシンを表すようなものであれば, 分かりやすくなります. たとえば Acme 社のアート(Art)部門であれば, NIS ドメイン名を"acme-art"とすれば良いでしょう. サーバマシンの物理的な条件とは NIS サーバとして使うマシンを選ぶ際には, いくつかの注意点があります. NIS における困ったことの一つに, クライアントのサーバへの依存度があります. クライアントが自分の NIS ドメインのサーバに接続できない場合, マシンが使用不能になることがよくあります. もし, ユーザやグループに関する情報が得られなければ, ほとんどのシステムは一時的にですが停止してしまいます. こういったことを念頭に置いて, しょっちゅうリブートされるマシンや, 開発に使われそうなマシンを選ばないようにしなければなりません. 理想的には, NIS サーバはスタンドアロンで NIS サーバ専用となるマシンにするべきです. ネットワークの負荷が重くなければ, 他のサービスを走らせているマシンを NIS サーバにしてもかまいません. ただし NIS サーバが使えなくなると, すべてのクライアントに影響をおよぼす, という点には注意しなければなりません. NIS サーバ 元となるすべての NIS 情報は, NIS マスターサーバと呼ばれる 1 台のマシンに置かれます. この情報が格納されるデータベースを NIS マップと呼びます. FreeBSDでは, このマップは /var/yp/[domainname] に置かれます. [domainname] は, サーバがサービスする NIS ドメインです. 1 台の NIS サーバが複数のドメインをサポートすることも可能です. つまり, このディレクトリを各々のドメインごとに作ることができ, 各ドメインごと, 独立したマップの集合を持つことになります. NIS のマスターサーバとスレーブサーバ上では, ypserv デーモンがすべての NIS 要求を処理します. ypserv は NIS クライアントからの要求を受け付け, ドメイン名とマップ名を対応するデータベースファイルへのパスに変換し, データをクライアントに返送します. NIS マスターサーバの設定 やりたいことにもよりますが, NIS マスターサーバの設定は比較的単純です. FreeBSD には ypinit という便利なスクリプトがあり, これを使うと初期設定を 非常に簡単に行なうことができます. この設定を順調に進めるためには, いくつか事前にやらなければならないことがあります. NIS ドメイン名が設定されていることを, domainname コマンドで確認してください. ホストが属していないドメインに対しても ypinit を実行することはできますが, domainname が設定されていなければ この段階で設定すると良いでしょう. master.passwd ファイルが /var/yp に置かれていることを確認してください. NIS は, クライアントと共有するパスワードを このファイルから取得します. このファイルがない場合, ypinit はエラー終了します. これは, 新しい master.passwd でも, すでに存在する /etc/master.passwd を コピーしたものでもかまいません. コピーする場合には, ユーザ全体やグループに対する読み出し許可属性が 設定されていないことを確認してください. ypserv デーモンを起動してください. ypinit が動作するには, ypserv が RPC(Remote Procedure Call) の呼び出しに反応することが必要になります. 通常の設定では, ypserv にオプションフラグを指定する必要はありません. 以上の手順が終了したら, フラグを付けて ypinit を 実行してください. 立てようとしているマスターサーバのドメイン名が domainname に設定したものと異なっているなら, そのドメインを指定することができます. 下の例では, NIS のドメイン名を test-domain としています. # ypinit -m test-domain Server Type: MASTER Domain: test-domain Creating an YP server will require that you answer a few questions. Questions will all be asked at the beginning of the procedure. Do you want this procedure to quit on non-fatal errors? [y/n: n] n Ok, please remember to go back and redo manually whatever fails. If you don't, something might not work. At this point, we have to construct a list of this domains YP servers. master.example.com is already known as master server. Please continue to add any slave servers, one per line. When you are done with the list, type a <Control D>. master server : master.example.com next host to add: ^D The current list of NIS servers looks like this: master.example.com Is this correct? [y/n: y] y Building /var/yp/test-domain/ypservers... Running /var/yp/Makefile... NIS Map update started on Fri Dec 3 16:54:12 PST 1999 for domain test-domain Updating hosts.byname... Creating new /var/yp/passwd file from /var/yp/master.passwd... Updating netid.byname... Updating hosts.byaddr... Updating networks.byaddr... Updating networks.byname... Updating protocols.bynumber... Updating protocols.byname... Updating rpc.byname... Updating rpc.bynumber... Updating services.byname... Updating group.byname... Updating group.bygid... Updating passwd.byname... Updating passwd.byuid... Updating master.passwd.byname... Updating master.passwd.byuid... NIS Map update completed. master.example.com has been setup as an YP master server without any errors. NIS サーバをきちんと動作させるためには, /etc/rc.conf に数行, 追加する必要があります. 次のような行があることを確認して下さい. nis_server_enable="YES" nis_server_flags="" nis_yppasswdd_enable="YES" nis_yppasswdd_flags="" ほとんどの場合, NIS サーバで yppasswd を 実行させることを考えるでしょう. こうすると, クライアントマシンにいるユーザが, パスワードなどのユーザ情報をリモートから変更することが可能になります. NIS スレーブサーバの設定 NIS スレーブサーバの設定は, マスターサーバの設定よりも簡単で, ypinit コマンドを使うだけでほとんど終わりです. 前述の例と同じように, NIS ドメイン名として test-domain を使っています. # ypinit -s master.example.com test-domain Server Type: SLAVE Domain: test-domain Master: master.example.com Creating an YP server will require that you answer a few questions. Questions will all be asked at the beginning of the procedure. Do you want this procedure to quit on non-fatal errors? [y/n: n] n Ok, please remember to go back and redo manually whatever fails. If you don't, something might not work. There will be no further questions. The remainder of the procedure should take a few minutes, to copy the databases from master.example.com. Transferring netgroup... ypxfr: Exiting: Map successfully transferred Transferring netgroup.byuser... ypxfr: Exiting: Map successfully transferred Transferring netgroup.byhost... ypxfr: Exiting: Map successfully transferred Transferring master.passwd.byuid... ypxfr: Exiting: Map successfully transferred Transferring passwd.byuid... ypxfr: Exiting: Map successfully transferred Transferring passwd.byname... ypxfr: Exiting: Map successfully transferred Transferring group.bygid... ypxfr: Exiting: Map successfully transferred Transferring group.byname... ypxfr: Exiting: Map successfully transferred Transferring services.byname... ypxfr: Exiting: Map successfully transferred Transferring rpc.bynumber... ypxfr: Exiting: Map successfully transferred Transferring rpc.byname... ypxfr: Exiting: Map successfully transferred Transferring protocols.byname... ypxfr: Exiting: Map successfully transferred Transferring master.passwd.byname... ypxfr: Exiting: Map successfully transferred Transferring networks.byname... ypxfr: Exiting: Map successfully transferred Transferring networks.byaddr... ypxfr: Exiting: Map successfully transferred Transferring netid.byname... ypxfr: Exiting: Map successfully transferred Transferring hosts.byaddr... ypxfr: Exiting: Map successfully transferred Transferring protocols.bynumber... ypxfr: Exiting: Map successfully transferred Transferring ypservers... ypxfr: Exiting: Map successfully transferred Transferring hosts.byname... ypxfr: Exiting: Map successfully transferred slave.example.com has been setup as an YP slave server without any errors. Don't forget to update map ypservers on master.example.com. この例の場合, /var/yp/test-domain というディレクトリが必要になります. NIS マスターサーバのマップファイルのコピーは, このディレクトリに置かれ, 最新のものに維持されていなければなりません. 次のエントリをスレーブサーバの /etc/crontab に追加することで, 最新のものに保つことができます. 20 * * * * root /usr/libexec/ypxfr passwd.byname 21 * * * * root /usr/libexec/ypxfr passwd.byuid この二行は, スレーブサーバにあるマップファイルを, マスターサーバのマップファイルと同期させるものですが, 必須というわけではありません. なぜなら, マスターサーバは, NIS マップに対する変更を スレーブサーバに伝えようとするからです. しかし, サーバが管理するシステムにとってパスワード情報はとても重要なものですので, 強制的に更新してしまう方が良いでしょう. 特に, マップファイルの更新がきちんと行なわれるかどうか わからないくらい混雑するネットワークでは, 重要なポイントになります. NIS クライアント NIS クライアントは ypbind デーモンを使って, 特定の NIS サーバとの間に結合(binding)と呼ばれる関係を成立させます. ypbind は, システムのデフォルトのドメイン(domainname コマンドで設定されます)をチェックし, RPC 要求を ブロードキャストパケットとしてローカルネットワークに送信します. この RPC 要求により, ypbind が結合を成立させようとしているドメイン名が指定されます. 要求されているドメイン名に対してサービスするよう設定されたサーバが ブロードキャストパケットを受信すると, サーバは ypbind に応答し, ypbind は応答のあったサーバのアドレスを記録します. 複数のサーバがある(たとえば一つのマスターサーバと, 複数のスレーブサーバがある)場合, ypbind は, 最初に応答したサーバのアドレスを使用します. これ以降, クライアントのシステムは, すべての NIS の要求をそのサーバに向けて送信します. ypbind は, サーバが順調に動作していることを確認するため, 時々 ping をサーバに送ります. 反応が戻ってくるべき時間内に ping に対する応答が来なければ, ypbind は, そのドメインを結合不能(unbound)として記録し, 別のサーバを見つけるべく, 再びブロードキャストパケットの送信を行います. NIS クライアントの設定 FreeBSD マシンにおける NIS クライアントの設定, 非常に簡単です. まず, ホストの NIS ドメイン名を設定します. これは, domainname コマンドで設定するか, 以下のエントリを /etc/rc.conf に追加して, ブート時に設定されるようにしてください. nisdomainname="test-domain" NIS サーバにある, すべてのパスワードエントリを取り込むため, vipwコマンドで以下の行を /etc/master.passwd に追加します. +::::::::: この行によって, NIS サーバのパスワードマップにアカウントがある人全員に, アカウントが与えられます. この行を変更すると, さまざまな NIS クライアントの設定を行なうことが可能です. これ以上詳しく知りたい方は, O'Reilly の Managing NFS and NIS をお読みください. NIS サーバにある, すべてのグループエントリを取り込むため, 以下の行を /etc/group に追加します.     +:*:: 上記の手順がすべて完了すれば, ypcat passwd によって NIS サーバの passwd マップが参照できるようになっているはずです. NIS セキュリティ 一般に, ドメイン名さえ知っていれば, どこにいるリモートユーザでも ypserv に RPC を発行し, NIS マップの内容を引き出すことができます. こういった不正なやりとりを防ぐため, ypserv には securenets と呼ばれる機能があります. これはアクセスを決められたホストだけに制限する機能です. ypserv は起動時に, /var/yp/securenets ファイルから securenets に関する情報を読み込みます. 上記のパス名は, オプションで指定されたパス名によって変わります. このファイルは, 空白で区切られた ネットワーク指定とネットマスクのエントリからなっていて, # で始まる行はコメントとみなされます. 簡単な securenets ファイルの例を以下に示します. # allow connections from local host -- mandatory 127.0.0.1 255.255.255.255 # allow connections from any host # on the 192.168.128.0 network 192.168.128.0 255.255.255.0 # allow connections from any host # between 10.0.0.0 to 10.0.15.255 10.0.0.0 255.255.240.0 ypserv が上記のルールの一つと合致するアドレスからの要求を受け取った場合, 処理は通常に行なわれます. もしアドレスがルールに合致しなければ, その要求は無視されて警告メッセージがログに記録されます. また, /var/yp/securenets が存在しない場合, ypserv は, すべてのホストからの接続を受け入れます. ypserv は, Wietse Venema 氏による tcpwrapper パッケージもサポートしています. そのため, /var/yp/securenets の代わりに tcpwrapper の設定ファイルを使ってアクセス制御を行なうことも可能です. これらのアクセス制御機能は一定のセキュリティを提供しますが, どちらも特権ポートのテストのような IP spoofing 攻撃に対して脆弱です. NIS v1 との互換性 FreeBSD の ypserv は, NIS v1 クライアントを部分的にサポートします. FreeBSD の NIS 実装は NIS v2 プロトコルのみを使用していますが, ほかの実装では, 古いシステムとの下位互換性を持たせるため v1 プロトコルをサポートしているものもあります. そのようなシステムに付いている ypbind デーモンは, 必要がないにもかかわらず NIS v1 のサーバとの結合を成立させようとします(しかも v2 サーバからの応答を受信した後でも, ブロードキャストをし続けるかも知れません). FreeBSD の ypserv は, クライアントからの通常のリクエストはサポートしていますが, v1 のマップ転送リクエストはサポートしていないことに注意してください. つまり FreeBSD の ypserv を, v1 だけをサポートするような古い NIS サーバと組み合わせて マスターやスレーブサーバとして使うことはできません. 幸いなことに, 現在, そのようなサーバが使われていることは ほとんどないでしょう. NIS クライアントとしても動作している NIS サーバ 複数のサーバが存在し, サーバ自身が NIS クライアントでもあるようなドメインで ypserv が実行される場合には, 注意が必要です. 一般的に良いとされているのは, 他のサーバと結合をつくるようにブロードキャストパケットの送信をさせるのではなく, サーバをそれ自身に結合させることです. もし, サーバ同士が依存関係を持っていて, 一つのサーバが停止すると, 奇妙なサービス不能状態に陥ることがあります. その結果, すべてのクライアントはタイムアウトを起こして 他のサーバに結合しようと試みますが, これにかかる時間はかなり大きく, サーバ同士がまた互いに結合してしまったりすると, サービス不能状態はさらに継続することになります. ypbind オプションフラグを指定して実行することで, ホストを特定のサーバに結合することが可能です. libscrypt 対 libdescrypt NIS を実装しようする人の誰もがぶつかる問題の一つに, 暗号ライブラリの互換性があります. NIS サーバが DES 暗号ライブラリを使っている場合には, 同様に DES を使用しているクライアントしかサポートできません. サーバとクライアントがどのライブラリを使用しているかは, /usr/lib のシンボリックリンクを見ればわかります. あるマシンが DES ライブラリを使うように設定されている場合, リンクは以下のようになっています. &prompt.user; ls -l /usr/lib/*crypt* lrwxrwxrwx 1 root wheel 13 Jul 15 08:55 /usr/lib/libcrypt.a@ -> libdescrypt.a lrwxrwxrwx 1 root wheel 14 Jul 15 08:55 /usr/lib/libcrypt.so@ -> libdescrypt.so lrwxrwxrwx 1 root wheel 16 Jul 15 08:55 /usr/lib/libcrypt.so.2@ -> libdescrypt.so.2 lrwxrwxrwx 1 root wheel 15 Jul 15 08:55 /usr/lib/libcrypt_p.a@ -> libdescrypt_p.a -r--r--r-- 1 root wheel 13018 Nov 8 14:27 /usr/lib/libdescrypt.a lrwxr-xr-x 1 root wheel 16 Nov 8 14:27 /usr/lib/libdescrypt.so@ -> libdescrypt.so.2 -r--r--r-- 1 root wheel 12965 Nov 8 14:27 /usr/lib/libdescrypt.so.2 -r--r--r-- 1 root wheel 14750 Nov 8 14:27 /usr/lib/libdescrypt_p.a マシンが FreeBSD の標準の MD5 暗号ライブラリを使うように 設定されている場合には, 以下のようになります. &prompt.user; ls -l /usr/lib/*crypt* lrwxrwxrwx 1 root wheel 13 Jul 15 08:55 /usr/lib/libcrypt.a@ -> libscrypt.a lrwxrwxrwx 1 root wheel 14 Jul 15 08:55 /usr/lib/libcrypt.so@ -> libscrypt.so lrwxrwxrwx 1 root wheel 16 Jul 15 08:55 /usr/lib/libcrypt.so.2@ -> libscrypt.so.2 lrwxrwxrwx 1 root wheel 15 Jul 15 08:55 /usr/lib/libcrypt_p.a@ -> libscrypt_p.a -r--r--r-- 1 root wheel 6194 Nov 8 14:27 /usr/lib/libscrypt.a lrwxr-xr-x 1 root wheel 14 Nov 8 14:27 /usr/lib/libscrypt.so@ -> libscrypt.so.2 -r--r--r-- 1 root wheel 7579 Nov 8 14:27 /usr/lib/libscrypt.so.2 -r--r--r-- 1 root wheel 6684 Nov 8 14:27 /usr/lib/libscrypt_p.a NIS クライアントの認証でトラブルが発生した場合には, ここから問題となりそうな部分を探すと良いでしょう. DHCP Written by &a.gsutter;, March 2000. DHCPとは何でしょう? DHCP (Dynamic Host Configuration Protocol) は, システムをネットワー クに接続するだけで, ネットワークでの通信に必要な情報を入手するこ とができる仕組みです. FreeBSD では, ISC (Internet Software Consortium) による DHCP の実装を使用しています. したがって, ここで の説明のうち, 実装によって異なる部分は ISC のもの用になっています. この節で説明していること ハンドブックのこの節では DHCP システムの, FreeBSD に組み込まれてい る部分についてだけ説明しています. ですから, サーバについては説明 していません. 後の節で紹介するリファレンスに加えて, DHCP のマニュアルページも有力な参考になることでしょう. DHCP の動作 クライアントとなるマシン上で DHCP のクライアントである dhclient を実 行すると, まず設定情報の要求をブロードキャストします. デフォルト では, このリクエストには UDP のポート 68 を使用します. サーバは UDP の ポート 67 で応答し, クライアントの IP アドレスと, ネットマスクやルー タ, DNS サーバなどの関連する情報を提供します. これらの情報の すべては DHCP の「リース」の形で送られ, DHCP サーバ管理者によって決 められたある一定の時間内でのみ有効になります. これによって, ネッ トワークに存在しなくなったホストの IP アドレスは自動的に回収される ことになります. DHCP クライアントはサーバから非常に多くの情報を取得することができます. &man.dhcp-options.5; に, その非常に大きなリストが載っています. FreeBSD への組み込み FreeBSD は ISC の DHCP クライアントである dhclient を完全に組み込んでいます. DHCP クラ イアントはインストーラと基本システムの両方で提供されています. ですから DHCP サーバを走らせているネットワーク上ではネットワー ク関係の設定についての詳細な知識は必要になりません. dhclient は, 3.2 以降の FreeBSD のすべての配布 に含まれています. DHCP は sysinstall でサポートされてお り, sysinstall でのネットワークインターフェイス設定の際は, 「こ のインターフェイスの設定として DHCP を試してみますか?」という質問 が最初になされます. これに同意することで dhclient が実行さ れ, それが成功すればネットワークの設定情報は自動的に取得されま す. システム起動時に, DHCP を使ってネットワーク情報を取得するように するには, /etc/rc.conf に次のように加えて ください. ifconfig_fxp0="DHCP" fxp0 の部分を, 動的に設定したいインター フェースの名前で置き換えることを忘れないようにしてください. もし, 使っているdhclient の場所を変更してい たり, dhclient にフラグを渡したい場合は, 同 様に下のように書き加えてください. dhcp_program="/sbin/dhclient" dhcp_flags="" DHCP サーバである dhcpd は, ports collectionに isc-dhcp2 として収録されていま す. この port はクライアント, サーバ, リレーエージェントから成 る ISC の DHCP 配布物をすべて含んでいます. 関連ファイル /etc/dhclient.conf dhclient は設定ファイル /etc/dhclient.conf を必要とします. 大抵の場合, このファイルはコメントだけであり, デフォルトが 通常使いやすい設定になっています. この設定ファイルは マニュアルページ &man.dhclient.conf.5; で説明しています. /sbin/dhclient dhclient は静的にリンクされており, /sbin に置かれています. マニュアルページ &man.dhclient.8; で dhclient コマンドについて より詳しく説明しています. /sbin/dhclient-script dhclient-script は FreeBSD 特有の, DHCP クラ イアント設定スクリプトです. これについてはマニュアルページ &man.dhclient-script.8; で説明されていますが, これを編集する 必要はほとんど発生しないでしょう. /var/db/dhclient.leases DHCP クライアントはこのファイルに有効なリースのデータベースを ログとして記録します. &man.dhclient.leases.5; にもうすこし詳 しい解説があります. 参考になる文献 DHCP のプロトコルは RFC 2131 に完全に記述されています. また, dhcp.org にも有用な 情報源が用意されています. diff --git a/ja_JP.eucJP/books/handbook/authors.ent b/ja_JP.eucJP/books/handbook/authors.ent index 369e1af5e8..07bd7e7525 100644 --- a/ja_JP.eucJP/books/handbook/authors.ent +++ b/ja_JP.eucJP/books/handbook/authors.ent @@ -1,525 +1,527 @@ abial@FreeBSD.org"> ache@FreeBSD.org"> adam@FreeBSD.org"> ade@FreeBSD.org"> adrian@FreeBSD.org"> akiyama@FreeBSD.org"> alc@FreeBSD.org"> alex@FreeBSD.org"> alfred@FreeBSD.org"> amurai@FreeBSD.org"> andreas@FreeBSD.org"> andy@FreeBSD.org"> archie@FreeBSD.org"> asami@FreeBSD.org"> asmodai@FreeBSD.org"> assar@FreeBSD.org"> ats@FreeBSD.org"> awebster@pubnix.net"> babkin@FreeBSD.org"> bde@FreeBSD.org"> ben@FreeBSD.org"> billf@FreeBSD.org"> bp@FreeBSD.org"> brandon@FreeBSD.org"> brian@FreeBSD.org"> bsd@FreeBSD.org"> cawimm@FreeBSD.org"> cg@FreeBSD.org"> charnier@FreeBSD.org"> chris@FreeBSD.org"> chuckr@glue.umd.edu"> chuckr@FreeBSD.org"> cjh@FreeBSD.org"> cp@FreeBSD.org"> cokane@FreeBSD.org"> cpiazza@FreeBSD.org"> cracauer@FreeBSD.org"> csgr@FreeBSD.org"> cwt@FreeBSD.org"> dan@FreeBSD.org"> danny@FreeBSD.org"> dannyboy@FreeBSD.org"> darrenr@FreeBSD.org"> davidn@blaze.net.au"> dbaker@FreeBSD.org"> dburr@FreeBSD.org"> dcs@FreeBSD.org"> dec@FreeBSD.org"> deischen@FreeBSD.org"> des@FreeBSD.org"> dfr@FreeBSD.org"> dg@FreeBSD.org"> dick@FreeBSD.org"> dillon@FreeBSD.org"> dima@FreeBSD.org"> dirk@FreeBSD.org"> Dirk.vanGulik@jrc.it"> dt@FreeBSD.org"> dufault@FreeBSD.org"> dwhite@FreeBSD.org"> dwmalone@FreeBSD.org"> dyson@FreeBSD.org"> eivind@FreeBSD.org"> ejc@FreeBSD.org"> erich@FreeBSD.org"> faq@FreeBSD.org"> fenner@FreeBSD.org"> flathill@FreeBSD.org"> foxfair@FreeBSD.org"> fsmp@FreeBSD.org"> gallatin@FreeBSD.org"> gclarkii@FreeBSD.org"> gehenna@FreeBSD.org"> gena@NetVision.net.il"> ghelmer@cs.iastate.edu"> gibbs@FreeBSD.org"> gioria@FreeBSD.org"> gj@FreeBSD.org"> gpalmer@FreeBSD.org"> graichen@FreeBSD.org"> green@FreeBSD.org"> grog@FreeBSD.org"> groudier@club-internet.fr"> gryphon@healer.com"> gshapiro@FreeBSD.org"> gsutter@FreeBSD.org"> guido@FreeBSD.org"> hanai@FreeBSD.org"> handy@sxt4.physics.montana.edu"> hrs@FreeBSD.org"> roger@freebsd.org"> helbig@FreeBSD.org"> hm@FreeBSD.org"> hoek@FreeBSD.org"> horikawa@FreeBSD.org"> hosokawa@FreeBSD.org"> hsu@FreeBSD.org"> imp@FreeBSD.org"> imura@FreeBSD.org"> itojun@itojun.org"> iwasaki@FreeBSD.org"> jake@FreeBSD.org"> jasone@FreeBSD.org"> jayanth@FreeBSD.org"> jb@cimlogic.com.au"> jdp@FreeBSD.org"> jedgar@FreeBSD.org"> jehamby@lightside.com"> jesusr@FreeBSD.org"> jfieber@FreeBSD.org"> jfitz@FreeBSD.org"> jgreco@FreeBSD.org"> jhay@FreeBSD.org"> jhb@FreeBSD.org"> jhs@FreeBSD.org"> jim@FreeBSD.org"> jkh@FreeBSD.org"> jkoshy@FreeBSD.org"> jlemon@FreeBSD.org"> john@starfire.MN.ORG"> jlrobin@FreeBSD.org"> jmacd@FreeBSD.org"> jmas@FreeBSD.org"> jmb@FreeBSD.org"> jmg@FreeBSD.org"> jmz@FreeBSD.org"> joe@FreeBSD.org"> joerg@FreeBSD.org"> john@FreeBSD.org"> jraynard@FreeBSD.org"> jseger@FreeBSD.org"> julian@FreeBSD.org"> jwd@FreeBSD.org"> jvh@FreeBSD.org"> karl@FreeBSD.org"> kato@FreeBSD.org"> kbyanc@FreeBSD.org"> kelly@ad1440.net"> ken@FreeBSD.org"> kevlo@FreeBSD.org"> kjc@FreeBSD.org"> knu@FreeBSD.org"> kris@FreeBSD.org"> kuriyama@FreeBSD.org"> lars@FreeBSD.org"> lile@FreeBSD.org"> ljo@FreeBSD.org"> luoqi@FreeBSD.org"> marcel@FreeBSD.org"> markm@FreeBSD.org"> marko@FreeBSD.org"> martin@FreeBSD.org"> max@FreeBSD.org"> mark@vmunix.com"> mbarkah@FreeBSD.org"> mckay@FreeBSD.org"> mckusick@FreeBSD.org"> md@bsc.no"> winter@jurai.net"> mharo@FreeBSD.org"> mjacob@FreeBSD.org"> mks@FreeBSD.org"> motoyuki@FreeBSD.org"> mph@FreeBSD.org"> mpp@FreeBSD.org"> msmith@FreeBSD.org"> mtaylor@FreeBSD.org"> murray@FreeBSD.org"> nakai@FreeBSD.org"> nate@FreeBSD.org"> nbm@FreeBSD.org"> nectar@FreeBSD.org"> newton@FreeBSD.org"> n_hibma@FreeBSD.org"> nik@FreeBSD.org"> non@FreeBSD.org"> nsayer@FreeBSD.org"> nsj@FreeBSD.org"> nyan@FreeBSD.org"> obrien@FreeBSD.org"> olah@FreeBSD.org"> +onoe@FreeBSD.org"> + opsys@open-systems.net"> patrick@FreeBSD.org"> paul@FreeBSD.org"> pb@fasterix.freenix.org"> pds@FreeBSD.org"> peter@FreeBSD.org"> phantom@FreeBSD.org"> phk@FreeBSD.org"> pho@FreeBSD.org"> piero@strider.inet.it"> pjchilds@imforei.apana.org.au"> proven@FreeBSD.org"> ps@FreeBSD.org"> pst@FreeBSD.org"> reg@FreeBSD.org"> rgrimes@FreeBSD.org"> rhuff@cybercom.net"> ricardag@ag.com.br"> rich@FreeBSD.org"> rnordier@FreeBSD.org"> roberto@FreeBSD.org"> rse@FreeBSD.org"> ru@FreeBSD.org"> rwatson@FreeBSD.org"> sada@FreeBSD.org"> sanpei@FreeBSD.org"> scrappy@FreeBSD.org"> se@FreeBSD.org"> sef@FreeBSD.org"> shafeeq@FreeBSD.org"> sheldonh@FreeBSD.org"> shige@FreeBSD.org"> shin@FreeBSD.org"> simokawa@FreeBSD.org"> smace@FreeBSD.org"> smpatel@FreeBSD.org"> sobomax@FreeBSD.org"> sos@FreeBSD.org"> stark@FreeBSD.org"> stb@FreeBSD.org"> steve@FreeBSD.org"> sumikawa@FreeBSD.org"> swallace@FreeBSD.org"> tanimura@FreeBSD.org"> taoka@FreeBSD.org"> takawata@FreeBSD.org"> tedm@FreeBSD.org"> tegge@FreeBSD.org"> tg@FreeBSD.org"> thepish@FreeBSD.org"> tom@FreeBSD.org"> torstenb@FreeBSD.org"> toshi@FreeBSD.org"> truckman@FreeBSD.org"> ugen@FreeBSD.org"> uhclem@FreeBSD.org"> ulf@FreeBSD.org"> ume@FreeBSD.org"> unfurl@FreeBSD.org"> vanilla@FreeBSD.org"> wes@FreeBSD.org"> whiteside@acm.org"> wilko@FreeBSD.org"> will@FreeBSD.org"> wlloyd@mpd.ca"> wollman@FreeBSD.org"> wosch@FreeBSD.org"> wpaul@FreeBSD.org"> wsanchez@FreeBSD.org"> yokota@FreeBSD.org"> diff --git a/ja_JP.eucJP/books/handbook/basics/chapter.sgml b/ja_JP.eucJP/books/handbook/basics/chapter.sgml index deb1fe7f2d..9a835319e1 100644 --- a/ja_JP.eucJP/books/handbook/basics/chapter.sgml +++ b/ja_JP.eucJP/books/handbook/basics/chapter.sgml @@ -1,590 +1,596 @@ Unix の基礎知識 訳: &a.jp.nakai;, 1996 年 10 月 12 日. この章では 改訂: Chris Shumway cshumway@cdrom.com, 2000 年 3 月 10 日. この章では FreeBSD オペレーティングシステムの基本的なコマンドと機能について記述しています. あなたが FreeBSD の初心者なら, 何か質問する前にこの章を読んでおいた方がきっといいはずです. 許可属性(permissions; パーミッション) FreeBSD は BSD UNIX を起源とする歴史を持ち, いくつかの鍵となる UNIX 思想にもとづいた基本設計がされています. まず最も際だった特徴として最初に言えるのは, FreeBSD がマルチユーザのオペレーティングシステムだということです. FreeBSD は同時に働いている複数のユーザすべてを, 完全に分離したタスク上で処理する能力を持っています. また FreeBSD は, ハードウェアデバイス, 周辺装置, メモリ, CPU 時間等への要求を, 各ユーザが平等に利用できるように適切に共有し, 管理する役割を担っています. システムがマルチユーザをサポートしているため, システムが管理する資源はすべて, 誰がその資源を読み・書き・実行できるかを支配する, 一組の許可属性を持っています. これらの許可属性は 3 つの部分からなる 8 進数の形で格納されています. それはそのファイルの所有者(owner)に対するもの, そのファイルが所属するグループ(group)に対するもの, その他(others)に対するものの 3 つです. これを数字を使って表現すると, 次のようになります. 許可属性 ディレクトリの表示 0 読み込み不可, 書き込み不可, 実行不可 --- 1 読み込み不可, 書き込み不可, 実行可能 --x 2 読み込み不可, 書き込み可能, 実行不可 -w- 3 読み込み不可, 書き込み可能, 実行可能 -wx 4 読み込み可能, 書き込み不可, 実行不可 r-- 5 読み込み可能, 書き込み不可, 実行可能 r-x 6 読み込み可能, 書き込み可能, 実行不可 rw- 7 読み込み可能, 書き込み可能, 実行可能 rwx ls -l で表示される詳細なディレクトリリストでは, ファイルの所有者, グループ, その他への許可属性を示す欄があるのがわかります. 次に示すのは, その部分だけ抜き出したものです. -rw-r--r-- 左から右へ見たときに最初にあたる文字は, それが 普通のファイルなのか, ディレクトリなのか, キャラクタ型のデバイス特殊ファイルなのか, ブロック型のデバイス特殊ファイルなのか, ソケットなのか, その他の特殊な疑似ファイルデバイスなのかといった種類を示す特別な文字です. その次の rw- と書かれた 3 文字は, そのファイルの所有者に許可を与えるものです. その次の r-- の 3 文字は, そのファイルが所属しているグループに許可を与えます. 最後の r-- の 3 文字は, システムに存在するその他のユーザに許可を与えます. - は許可が与えられていないことを示します. このファイルの例では, ファイルの所有者はこのファイルを読み書きでき, ファイルの所属しているグループに属するユーザはファイルを読むことだけでき, そのどちらでもないユーザは, このファイルを読むだけできるように許可属性が与えられています. 上の表によれば, このファイルに与えられた許可属性は 644 となります. ここで各数字は, このファイルの許可属性の 3 つの部分を表しています. ファイルについてはここまでの説明で十分です. しかし, デバイスの場合の許可属性はどのようにコントロールされているのでしょうか? FreeBSD は, 大部分のハードウェアをファイルとして取り扱います. そのため, プログラムからは普通のファイルとまったく同じようにオープンし, データの読み書きができるようになっています. これらのデバイス特殊ファイルは /dev ディレクトリに収められています. ディレクトリもまた, ファイルと同様に扱われます. それは読み込み/書き込み/実行の許可属性を持ちます. ディレクトリの実行ビットはファイルのそれとは少し違った意味を持ちます. ディレクトリが実行可能になっているとき, それはその中が探索できること, たとえば, そのディレクトリ中のファイルリストが参照できることを意味します. この他にも許可属性はありますが, いずれも setuid バイナリや sticky ディレクトリなどといった特殊な状況で使われます. ファイルの許可属性そのものについて, また, それらの設定のしかたに関する詳しい情報は, &man.chmod.1; マニュアルページを参照してください. ディレクトリ構造 FreeBSD の用いているファイルシステムは多くの基本的なシステム動作を決定するもので, その階層構造は極めて重要です. ディレクトリ構造に関する完全な記述が &man.hier.7; のマニュアルページにありますので, ここでは繰り返しません. 詳しい情報は, &man.hier.7; をご覧ください. 最も重要なディレクトリは, すべてのディレクトリの根(root)にあたる / ディレクトリです. このディレクトリは起動時に一番最初にマウントされ, 起動時に必要な基本システムが含まれています. また, ルートディレクトリには, 追加したい他のファイルシステムをマウントするためのマウントポイントも含まれます. マウントポイントとはルートファイルシステムに存在する, 追加のファイルシステムと接続するためのディレクトリのことです. 標準的なマウントポイントには /usr, /var, /mnt, /cdrom があります. 通常これらのディレクトリについては, /etc/fstab というファイル中のエントリが参照されます. /etc/fstab さまざまなファイルシステムとマウントポイントの表であり, システムが参照します. /etc/fstab に書かれたファイルシステムは オプションが指定されていなければ, 起動時に &man.rc.8; スクリプトによって自動的にマウントされます. /etc/fstab ファイルの書式やオプションに関しての詳細は &man.fstab.5; をご覧ください. シェル FreeBSD では日々の作業のほとんどは, 「シェル」と呼ばれるコマンドラインインタフェイスを通して行われます. シェルの主な仕事はコマンドを入力チャンネルから受け取り, そしてそれらを実行することです. 大部分のシェルはさらに組み込みの機能を持っていて, 日々の作業, ファイル管理やファイル名の展開, コマンドライン編集, コマンドマクロ, 環境変数などに便利です. FreeBSD には sh(Bourne Shell) や csh(C-shell) が含まれています. また, これ以外にもたくさんのシェルが FreeBSD Ports コレクションから利用可能です. tcsh や bash などの高機能なものは, これに含まれています. 「あなたは, どのシェルを使いますか?」という質問は, まったく趣味の問題です. あなたが C のプログラマだったとすれば, tcsh のような C 風のシェルの方が落ち着くかもしれません. Linux から来た人や UNIX のコマンドラインインタフェイスになじみがなければ, bash を試すのも良いでしょう. ポイントは, それぞれのシェルは, あなたの好みの作業環境で利用できる(もしくはできない)独自の機能を持っているということ, そして, どのシェルを使うことにするかを決めるのはあなた自身だということです. シェルの一般的な機能の一つに, ファイル名の補完があります. コマンドやファイル名の最初の数文字を与えて TAB キーを押すことで, シェルにコマンドやファイル名の残りの部分を自動的に補完させることができます. 例をあげましょう. 二つのファイル foobar, foo.bar が あったとします. foo.bar の方を削除しようとするとき rm fo[TAB].[TAB] と入力します. するとシェルは rm foo[BEEP].bar と出力するでしょう. [BEEP] のところはコンソールのベル(訳注: 通常はビープ音が鳴ります)です. これは複数のファイルがマッチしたため, ファイル名の補完を完全に行なえなかったことを伝えています. foobarfoo.bar は 両方とも fo ではじまりますが, foo までなら補完できます. ここで . を入力して TAB を押せば, シェルはファイル名の残りの部分を補完できます. もう一つあげられるシェルの機能として, 環境変数があります. 環境変数とは, シェルの環境変数空間におけるキーと値とのペアです. この変数空間は, そのシェルから起動されたプログラムから参照でき, それを利用してプログラムの設定を保存するのに利用されます. 下の表は, 一般的な環境変数とその意味を示したものです. 変数名 意味 USER 現在のログインユーザのユーザ名. PATH コロンで区切られた実行ファイル探索のための ディレクトリのリスト. DISPLAY 接続する X11 ディスプレイのネットワーク名(存在する場合のみ). SHELL 現在のシェル. TERM ユーザの端末名. 端末のケーパビリティを決定するのに使われる. TERMCAP 種々の端末の機能を実現する端末のエスケープコードの データベースのエントリ. OSTYPE オペレーティングシステムの種別. たとえば FreeBSD. MACHTYPE システムが動作している CPU のアーキテクチャ. EDITOR ユーザの選んだテキストエディタ. PAGER ユーザの選んだテキストページャ. MANPATH コロンで区切られたマニュアルページ探索のための ディレクトリのリスト. 環境変数をセットしたりその値を見る方法は, それぞれのシェルごとに多少異なります. たとえば, csh や tcsh 等の C シェルでは setenv を使います. sh や bash 等の Bourne シェルでは setexport を使います. たとえば, EDITOR 環境変数の値を /usr/local/bin/emacs に セットするか変更するならば次のようにします. - setenv EDITOR /usr/local/bin/emacs + &prompt.user; setenv EDITOR /usr/local/bin/emacs Bourne シェルでは次のようになります. - export EDITOR="/usr/local/bin/emacs" + &prompt.user; export EDITOR="/usr/local/bin/emacs" ほとんどのシェルでは, コマンドライン中の変数名の前に $ 文字を置くことで, 環境変数を展開させることができます. たとえば, echo $TERM$TERM が セットされている内容を表示します. それはシェルが $TERM を展開して echo に渡しているからです. シェルはさまざまな特殊文字を, 特別なデータを表すものとして扱います. その特殊文字はメタキャラクタと呼ばれます. もっとも一般的なものは * で, これはファイル名に含まれる, あらゆる文字を表します. これらの特殊なメタキャラクタはファイル名の展開に使われます. たとえば, echo * と入力すると ls と入力したのとほとんど同じ結果を得られます. これはシェルが * とマッチするすべてのファイルを 受け取って echo のコマンドラインに渡し, 表示するからです. これらの特殊文字をシェルに解釈させないようにするため, 特殊文字の前にバックスラッシュ文字 (\) を置くことができます. echo $TERM は, あなたの端末が何にセットされているかを表示します. echo \$TERM$TERM と そのまま表示します. シェルの変更 シェルを変更する一番簡単な方法は chsh コマンドを使うことです. chsh を実行すると 環境変数 EDITOR で示されたエディタが立ち上がります. 環境変数をセットしていなかった時は vi が立ち上がります. Shell: の行を適宜変更してください. chsh オプションをつけると, エディタを起動せずにシェルを変更することが可能です. たとえば, シェルを bash に変えたいなら, 次のようにしてください. &prompt.user; chsh -s /usr/local/bin/bash chsh をパラメータなしで実行し, エディタでシェルを変更しても同じことができます. 使おうと思っているシェルは必ず /etc/shells 中に書かれているものでなければなりません. シェルを Ports コレクションから インストールしていたのであれば, すでにそれは行なわれていますが, 手動でインストールした場合は, それを忘れずに行ってください. たとえば, bash を手動で /usr/local/bin にインストールした場合 以下のようにする必要があります. &prompt.root; echo "/usr/local/bin/bash" >> /etc/shells そして chsh を実行してください. テキストエディタ さまざまな FreeBSD の設定は, テキストファイルを編集することで行われます. そのため, テキストエディタの扱いに慣れると良いでしょう. FreeBSD には, 基本システムの一部として二, 三提供されるものと, Ports collection から利用できる, たくさんのテキストエディタが用意されています. 最も学習が簡単なエディタは, easy editor の略で ee と呼ばれるものです. ee を立ち上げるには, コマンドラインから ee filename と入力します. ここで filename は, 編集しようとしているファイルの名前です. たとえば, /etc/rc.conf を編集するには ee /etc/rc.conf と入力します. 一旦 ee の中に入れば, エディタの機能を操作するコマンドはすべてディスプレイの上部に 表示されています. キャレット ^ 文字は キーボードのコントロールキーを意味しますので, ^e はコントロールキーと e を一緒に押すという意味になります. ee を終了するにはエスケープキーを押し, そして leave editor を選びます. ファイルが更新されていたときは, エディタは変更をセーブするかどうかプロンプトを出します. FreeBSD には, 基本システムの一部として vi, Ports コレクションの一部として emacsvim といった, より強力なテキストエディタが用意されています. これらのエディタはやや学習が複雑ですが, より強力で高い機能性を提供します. しかし, あなたが多量のテキストを編集することを考えているなら, vimemacs といった強力なエディタを習得することは, より多くの時間を節約することでしょう. さらに詳しい情報を得るには... オンラインマニュアル FreeBSD についてのもっとも包括的な文書は, マニュアルページの形式になっているものです. FreeBSD システム上のほとんどすべてのプログラムには, 基本的な操作方法とさまざまな引数を説明しているリファレンスマニュアルが添付されています. これらのマニュアルは man コマンドで見ることができます. man コマンドの使い方は簡単です. - &prompt.user; man コマンド名 + &prompt.user; man コマンド名 コマンド名 のところには, 知りたいコマンドの名前を入れます. たとえば ls コマンドについて知りたい場合には, 次のように入力します. - &prompt.user; man ls + &prompt.user; man ls オンラインマニュアルは, セクション番号で分類されています. ユーザコマンド システムコールとエラー番号 C のライブラリ関数 デバイスドライバ ファイル形式 ゲームや娯楽 さまざまな情報 システムの管理と操作のためのコマンド カーネル開発者のための情報 時折, 同じトピックがオンラインマニュアルの複数のセクションに記載されている場合があります. たとえば, chmod ユーザコマンドと chmod() システムコールの場合がそれに該当します. この場合, man コマンドにセクション番号を与えることで, どちらを参照したいかを指定することができます. - &prompt.user; man 1 chmod + &prompt.user; man 1 chmod 上のようにすれば, ユーザコマンド chmod のマニュアルページが表示されます. オンラインマニュアルの特定セクションへの参照は, 慣習的に書かれている文書で括弧の中に示されます. すなわち, &man.chmod.1; は chmod ユーザコマンドを, &man.chmod.2; はシステムコールの方を示しています. コマンドの名前を知っていて, 単純にその使い方を知りたい場合はここまでの説明で十分でしょう. しかし, もしコマンドの名前を思い出せない場合にはどうしたら良いのでしょうか? man に スイッチをつければ, コマンド解説(description)の文章から, 指定したキーワードを検索することができます. - &prompt.user; man -k mail + &prompt.user; man -k mail このコマンドにより, mail というキーワードをコマンド解説に含むコマンドの一覧が表示されます. 実際には, これは apropos コマンドを使う場合と同等の機能です. それでは, /usr/bin にあるさまざまなコマンドすべてを見ていて, それらが実際にどう働くのかが, まったく見当もつかないときには どうしたら良いでしょう? - そのときは単純に, - &prompt.user; cd /usr/bin; man -f * - とするか, あるいは同じ働きをする - &prompt.user; cd /usr/bin; whatis * - としてください. + そのときは単純に, + + &prompt.user; cd /usr/bin +&prompt.user; man -f * + + とするか, あるいは同じ働きをする + + &prompt.user; cd /usr/bin +&prompt.user; whatis * + + としてください. GNU の Info ファイル FreeBSD には Free Software Foundation (FSF) によるアプリケーションや ユーティリティがたくさん含まれています. これらのプログラムには, マニュアルページに加えて info ファイルと呼ばれる ハイパーテキスト形式の文書が付属しています. この文書は info コマンド, あるいは emacs をインストールしているなら emacs の info モードで読むことができます. &man.info.1; コマンドを使うには, 単に次のように入力します. - &prompt.user; info + &prompt.user; info h と入力すると, 簡単な手引きを読むことができます. クイックコマンドリファレンスは ? を入力してください. diff --git a/ja_JP.eucJP/books/handbook/bibliography/chapter.sgml b/ja_JP.eucJP/books/handbook/bibliography/chapter.sgml index 4d5f1e04ba..988160ce14 100644 --- a/ja_JP.eucJP/books/handbook/bibliography/chapter.sgml +++ b/ja_JP.eucJP/books/handbook/bibliography/chapter.sgml @@ -1,651 +1,658 @@ 参考図書 訳: &a.jp.nakai;, 1996 年 10 月 12 日. FreeBSD オペレーティングシステムの個々の部分については マニュアルページで定義のような説明がなされていますが, それらにはどうやってその部分どうしをつなぎあわせて オペレーティングシステム全体を円滑に動作させるかを 説明していないという欠点がよく指摘されます. それを補うためには UNIX システム管理についてのよい本や, すぐれた利用者向けのマニュアルが欠かせません. FreeBSDのためだけの書籍 & 雑誌 非英語文化圏の 書籍 & 雑誌: FreeBSD 入門與應用 (in Chinese). FreeBSD入門キット 98版第二版. 宮嵜忠臣 著. 秀和システム. ISBN 4-87966-535-5 C3055 2900円. FreeBSD入門キット AT互換機版 第二版. 宮嵜忠臣 著. 秀和システム. ISBN 4-87966-535-5 C3055 2900円. ここまでできる FreeBSD パワーガイド. 霜山 滋 仲道 嘉夫 山中右次 著. 秀和システム. ISBN 4-87966-637-8 2600円. FreeBSD徹底入門. あさだ たくや / 天川 修平 / 衛藤 敏寿 / 浜田 直樹 / 細川 達己 / 三田 吉郎 著. 翔泳社. ISBN 4-88135-473-6 3600円. パーソナル UNIX スターターキット FreeBSD. 民田 雅人 / 古場 正行 / 増田 佳泰 / 天池 健 / 宮川 晋 共著. アスキー. ISBN 4-7561-1733-3 3000円. FreeBSD ハンドブック (日本語版). アスキー. ISBN 4-7561-1580-2 3800円. FreeBSD mit Methode (ドイツ語版). Computer und Literatur Verlag/Vertrieb Hanser 発行. 1998. ISBN 3-932311-31-0 FreeBSD インストール & 活用マニュアル, published by 毎日コミュニケーションズ. 英語の書籍 & 雑誌: The Complete FreeBSD, published by Walnut Creek CDROM. 利用者向けのガイド Computer Systems Research Group, UC Berkeley. 4.4BSD User's Reference Manual. O'Reilly & Associates, Inc., 1994. ISBN 1-56592-075-9 Computer Systems Research Group, UC Berkeley. 4.4BSD User's Supplementary Documents. O'Reilly & Associates, Inc., 1994. ISBN 1-56592-076-7 UNIX in a Nutshell. O'Reilly & Associates, Inc., 1990. ISBN 093717520X Mui, Linda. What You Need To Know When You Can't Find Your UNIX System Administrator. O'Reilly & Associates, Inc., 1995. ISBN 1-56592-104-6 Ohio State University has written a UNIX Introductory Course which is available online in HTML and postscript format. FreeBSD 友の会 jpman プロジェクト. FreeBSD User's Reference Manual (日本語訳). 毎日コミュニケーションズ , 1998. ISBN4-8399-0088-4 P3800E. + + + Edinburgh + University has written an Online Guide for + newcomers to the UNIX environment. + 管理者向けのガイド Albitz, Paul and Liu, Cricket. DNS and BIND, 3rd Ed. O'Reilly & Associates, Inc., 1998. ISBN ISBN 1-56592-512-2 (訳注: 邦訳は以下のものが出版されています. 高田 広章 / 小島 育夫 監訳 , 小舘 光正 訳. DNS & BIND 第 3 版. オライリー・ジャパン, 1999. ISBN 4-900900-91-5) Computer Systems Research Group, UC Berkeley. 4.4BSD System Manager's Manual. O'Reilly & Associates, Inc., 1994. ISBN 1-56592-080-5 Costales, Brian, et al. Sendmail, 2nd Ed. O'Reilly & Associates, Inc., 1997. ISBN 1-56592-222-0 (訳注: 邦訳は以下のものが出版されています. 2 分冊になっています. 原著の 3 章までが「システム管理」, 4 章が「リファレンス」 に対応します.) ただし 2 分冊となり,原著のリファレンスの部分に当たる Volume 2 は 1998 年 3 月の時点では出版されていません. 中村 素典 監訳, 鈴木 克彦 訳. sendmail システム管理 (Volume1). オライリー・ジャパン, 1997. ISBN 4-900900-40-0) 中村 素典 監訳, 鈴木 克彦 訳. sendmail システム管理 (Volume2). オライリー・ジャパン, 1998. ISBN 4-900900-41-9) Frisch, Æleen. Essential System Administration, 2nd Ed. O'Reilly & Associates, Inc., 1995. ISBN 1-56592-127-5 (訳注: 邦訳は以下のものが出版されています. 谷川 哲司 監訳, 黒岩 真吾 / 株式会社ユニテック 訳. UNIX システム管理入門 改訂版. オライリー・ジャパン, 1998. ISBN 4-900900-14-1) Hunt, Craig. TCP/IP Network Administration, 2nd Ed. O'Reilly & Associates, Inc., 1997. ISBN 1-56592-322-7 (訳注: 邦訳は以下のものが出版されています. 村井 純 監訳. TCP/IP ネットワーク管理 第 2 版. オライリー・ジャパン, 1998. ISBN 4-900900-68-0) Nemeth, Evi. UNIX System Administration Handbook. 3rd Ed. Prentice Hall, 2000. ISBN 0-13-020601-6 (訳注: 邦訳は以下のものが出版されています. 井上 尚司 監訳. UNIX システム管理入門. ソフトバンク, 1992. ISBN 4-89052-362-6 原本は第 3 版だが, 訳出は第 1 版のみ) Stern, Hal Managing NFS and NIS O'Reilly & Associates, Inc., 1991. ISBN 0-937175-75-7 (訳注: 邦訳は以下のものが出版されています. 砂原 秀樹 監訳, 倉骨 彰 訳, NFS & NIS. アスキー, 1992. ISBN 4-7561-0273-5) FreeBSD 友の会 jpman プロジェクト. FreeBSD System Administrator's Manual (日本語訳). 毎日コミュニケーションズ, 1998. ISBN4-8399-0109-0 P3300E. プログラマ向けのガイド Asente, Paul. X Window System Toolkit. Digital Press. ISBN 1-55558-051-3 Computer Systems Research Group, UC Berkeley. 4.4BSD Programmer's Reference Manual. O'Reilly & Associates, Inc., 1994. ISBN 1-56592-078-3 Computer Systems Research Group, UC Berkeley. 4.4BSD Programmer's Supplementary Documents. O'Reilly & Associates, Inc., 1994. ISBN 1-56592-079-1 Harbison, Samuel P. and Steele, Guy L. Jr. C: A Reference Manual. 4rd ed. Prentice Hall, 1995. ISBN 0-13-326224-3 (訳注: 邦訳は以下のものが出版されています. 斎藤 信男監訳. 新・詳説C言語リファレンス [H&Sリファレンス]. ソフトバンク, 1994. ISBN 4-89052-506-8 原本は第4版だが, 訳出は第3版のみ.) Kernighan, Brian and Dennis M. Ritchie. The C Programming Language.. PTR Prentice Hall, 1988. ISBN 0-13-110362-9 (訳注: 邦訳は以下のものが出版されています. 石田 晴久 訳. プログラミング言語 C 第2版(訳書訂正版) 共立出版, 1989. ISBN 4-320-02692-6) Lehey, Greg. Porting UNIX Software. O'Reilly & Associates, Inc., 1995. ISBN 1-56592-126-7 Plauger, P. J. The Standard C Library. Prentice Hall, 1992. ISBN 0-13-131509-9 (訳注: 邦訳は以下のものが出版されています. 福富 寛 / 門倉 明彦 / 清水 恵介 訳. 標準 C ライブラリ ANSI/ISO/JIS C規格. トッパン, 1995. ISBN 4-8101-8541-9) Stevens, W. Richard. Advanced Programming in the UNIX Environment. Reading, Mass. : Addison-Wesley, 1992 ISBN 0-201-56317-7 (訳注: 邦訳は以下のものが出版されています. 大木 敦雄 訳. 詳解 UNIX プログラミング. トッパン, 1994. ISBN 4-89052-524-6) Stevens, W. Richard. UNIX Network Programming. 2nd Ed. PTR Prentice Hall, 1998. ISBN 0-13-949876-1 (訳注: 第 1 版の邦訳は以下のものが出版されています. 篠田 陽一 訳. UNIX ネットワークプログラミング. トッパン, 1992. ISBN 4-8101-8509-5) 第 2 版の邦訳は以下のものが出版されています. 篠田 陽一 訳. UNIX ネットワークプログラミング 第 2 版 Vol.1. トッパン, 1999. ISBN 4-8101-8612-1) Wells, Bill. Writing Serial Drivers for UNIX. Dr. Dobb's Journal. 19(15), December 1994. pp68-71, 97-99. オペレーティングシステム内部 Andleigh, Prabhat K. UNIX System Architecture. Prentice-Hall, Inc., 1990. ISBN 0-13-949843-5 Jolitz, William. Porting UNIX to the 386. Dr. Dobb's Journal. January 1991-July 1992. Leffler, Samuel J., Marshall Kirk McKusick, Michael J Karels and John Quarterman The Design and Implementation of the 4.3BSD UNIX Operating System. Reading, Mass. : Addison-Wesley, 1989. ISBN 0-201-06196-1 (訳注: 邦訳は以下のものが出版されています. 中村 明 / 相田 仁 / 計 宇生 / 小池 汎平 訳. UNIX 4.3BSDの設計と実装. 丸善, 1991. ISBN 4-621-03607-6) Leffler, Samuel J., Marshall Kirk McKusick, The Design and Implementation of the 4.3BSD UNIX Operating System: Answer Book. Reading, Mass. : Addison-Wesley, 1991. ISBN 0-201-54629-9 (訳注: 邦訳は以下のものが出版されています. 相田 仁 / 計 宇生 / 小池 汎平 訳. UNIX 4.3BSDの設計と実装. アンサーブック, トッパン, 1991. ISBN 4-8101-8039-5) McKusick, Marshall Kirk, Keith Bostic, Michael J Karels, and John Quarterman. The Design and Implementation of the 4.4BSD Operating System. Reading, Mass. : Addison-Wesley, 1996. ISBN 0-201-54979-4 Stevens, W. Richard. TCP/IP Illustrated, Volume 1: The Protocols. Reading, Mass. : Addison-Wesley, 1996. ISBN 0-201-63346-9 Schimmel, Curt. Unix Systems for Modern Architectures. Reading, Mass. : Addison-Wesley, 1994. ISBN 0-201-63338-8 Stevens, W. Richard. TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP and the UNIX Domain Protocols. Reading, Mass. : Addison-Wesley, 1996. ISBN 0-201-63495-3 (訳注: 邦訳は以下のものが出版されています. 中本 幸一 / 石川 裕次 / 田中 伸佳 訳. 詳解 TCP/IP Vol.3: トランザクション TCP, HTTP, NNTP, UNIX ドメインプロトコル, アジソンウェスレイパブリッシャーズジャパン, 1998. ISBN 4-8101-8039-5) Vahalia, Uresh. UNIX Internals -- The New Frontiers. Prentice Hall, 1996. ISBN 0-13-101908-2 Wright, Gary R. and W. Richard Stevens. TCP/IP Illustrated, Volume 2: The Implementation. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-63354-X セキュリティの参考資料 Cheswick, William R. and Steven M. Bellovin. Firewalls and Internet Security: Repelling the Wily Hacker. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-63357-4 (訳注: 邦訳は以下のものが出版されています. 川副 博 監訳. ファイアウォール. ソフトバンク, 1995. ISBN 4-89052-672-2) Garfinkel, Simson and Gene Spafford. Practical UNIX Security. 2nd Ed. O'Reilly & Associates, Inc., 1996. ISBN 1-56592-148-8 (訳注: 邦訳は以下のものが出版されています. 山口 英 監訳. UNIX セキュリティ. アスキー, 1993. ISBN 4-7561-0274-3 原本は第 2 版だが, 訳出は第 1 版のみ) Garfinkel, Simson. PGP Pretty Good Privacy O'Reilly & Associates, Inc., 1995. ISBN 1-56592-098-8 ハードウェアの参考資料 Anderson, Don and Tom Shanley. Pentium Processor System Architecture. 2nd Ed. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-40992-5 Ferraro, Richard F. Programmer's Guide to the EGA, VGA, and Super VGA Cards. 3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-62490-7 Intel Corporation は, 自社の CPU やチップセットに関する文書を自社の 開発者向け Web サイト で公開しています. 文書のフォーマットは通常 PDF です. Shanley, Tom. 80486 System Architecture. 3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-40994-1 Shanley, Tom. ISA System Architecture. 3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-40996-8 Shanley, Tom. PCI System Architecture. 3rd ed. Reading, Mass. : Addison-Wesley, 1995. ISBN 0-201-40993-3 Van Gilluwe, Frank. The Undocumented PC. Reading, Mass: Addison-Wesley Pub. Co., 1994. ISBN 0-201-62277-7 UNIX の歴史 Lion, John Lion's Commentary on UNIX, 6th Ed. With Source Code. ITP Media Group, 1996. ISBN 1573980137 Raymond, Eric s. The New Hacker's Dictionary, 3rd edition. MIT Press, 1996. ISBN 0-262-68092-0 Also known as the Jargon File Saulus, Peter H. A quarter century of UNIX. Addison-Wesley Publishing Company, Inc., 1994. ISBN 0-201-54777-5 Simon Garfinkel, Daniel Weise, Steven Strassmann. The UNIX-HATERS Handbook. IDG Books Worldwide, Inc., 1994. ISBN 1-56884-203-1 Don Libes, Sandy Ressler Life with UNIX — special edition. Prentice-Hall, Inc., 1989. ISBN 0-13-536657-7 (訳注: 邦訳は以下のものが出版されています. 坂本 文 監訳. Life with UNIX. アスキー, 1990. ISBN 4-7561-0783-4 邦訳が Special 版の訳出か否かは不明) BSD 系 OS の系譜図. 1997年. ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/src/share/misc/bsd-family-tree または, FreeBSD-current マシンの ローカルファイル. BSD リリース告知コレクション. 1997. http://www.de.FreeBSD.ORG/de/ftp/releases/ Networked Computer Science Technical Reports Library . http://www.ncstrl.org/ Computer Systems Research group (CSRG) からの古い BSD リリース集 http://www.mckusick.com/csrg/: この 4 枚 CD セットには, 1BSD から 4.4BSD までと 4.4BSD-Lite2 が含まれます (残念ながら 2.11BSD は含まれていません). また 4 枚目の CD には, 最終ソースおよび SCCS ファイルが含まれています. 雑誌とジャーナル The C/C++ Users Journal. R&D Publications Inc. ISSN 1075-2838 Sys Admin — The Journal for UNIX System Administrators Miller Freeman, Inc., ISSN 1061-2688 diff --git a/ja_JP.eucJP/books/handbook/mirrors/chapter.sgml b/ja_JP.eucJP/books/handbook/mirrors/chapter.sgml index 9380284f3c..4605257e45 100644 --- a/ja_JP.eucJP/books/handbook/mirrors/chapter.sgml +++ b/ja_JP.eucJP/books/handbook/mirrors/chapter.sgml @@ -1,3480 +1,3502 @@ FreeBSD の入手方法 CD-ROM 出版社 FreeBSD は Walnut Creek CDROM から出されている CD-ROM から入手できます:
Walnut Creek CDROM 4041 Pike Lane, Suite F Concord CA, 94520 USA Phone: +1 925 674-0783 Fax: +1 925 674-0821 Email: info@cdrom.com WWW: http://www.cdrom.com/
FTP サイト FreeBSD の公式な情報は anonymous FTP によって以下の場所から 入手できます:
ftp://ftp.FreeBSD.org/pub/FreeBSD/.
FreeBSD ミラーサイトデーターベース FreeBSD ハンドブックの “ミラーサイト一覧” よりも正確です.というのはその情報を DNS から取得するので, 静的に記述されたリストよりも信頼性が高いのです. さらに, FreeBSD は以下のミラーサイトから anonymous FTP によって 入手できます. もし FreeBSD を anonymous FTP によって手にいれる場合は, 近くのサイトを利用するようにしてください. Argentina, Australia, Brazil, Canada, China, Czech Republic, Denmark, Estonia, Finland, France, Germany, Hong Kong, Ireland, Israel, Japan, Korea, Netherlands, New Zealand, Poland, Portugal, Russia, Saudi Arabia, South Africa, Spain, Slovak Republic, Slovenia, Sweden, Taiwan, Thailand, UK, Ukraine, USA. アルゼンチン 何か問題がある場合は,このドメインの hostmaster hostmaster@ar.FreeBSD.org に連絡してください. ftp.ar.FreeBSD.org/pub/FreeBSD/ オーストラリア 何か問題がある場合は, このドメインの hostmaster hostmaster@au.FreeBSD.org に連絡してください. ftp://ftp.au.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.au.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.au.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.au.FreeBSD.org/pub/FreeBSD/ ブラジル 何か問題がある場合は, このドメインの hostmaster hostmaster@br.FreeBSD.org に連絡してください. ftp://ftp.br.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.br.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.br.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.br.FreeBSD.org/pub/FreeBSD/ ftp://ftp5.br.FreeBSD.org/pub/FreeBSD/ ftp://ftp6.br.FreeBSD.org/pub/FreeBSD/ ftp://ftp7.br.FreeBSD.org/pub/FreeBSD/ カナダ 何か問題がある場合は, このドメインの hostmaster hostmaster@ca.FreeBSD.org に連絡してください. ftp://ftp.ca.FreeBSD.org/pub/FreeBSD/ 中国 何か問題がある場合は, このドメインの hostmaster phj@cn.FreeBSD.org に連絡してください. ftp://ftp.cn.FreeBSD.org/pub/FreeBSD/ チェコ 何か問題がある場合は, このドメインの hostmaster hostmaster@cz.FreeBSD.org に連絡してください. ftp://ftp.cz.FreeBSD.org/pub/FreeBSD/ 連絡先: calda@dzungle.ms.mff.cuni.cz デンマーク 何か問題がある場合は,このドメインの hostmaster hostmaster@dk.FreeBSD.org に連絡してください. ftp://ftp.dk.FreeBSD.org/pub/FreeBSD/ エストニア 何か問題がある場合は, このドメインの hostmaster hostmaster@ee.FreeBSD.org に連絡してください. ftp://ftp.ee.FreeBSD.org/pub/FreeBSD/ フィンランド 何か問題がある場合は, このドメインの hostmaster hostmaster@fi.FreeBSD.org に連絡してください. ftp://ftp.fi.FreeBSD.org/pub/FreeBSD/ フランス 何か問題がある場合は, このドメインの hostmaster hostmaster@fr.FreeBSD.org に連絡してください. ftp://ftp.fr.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.fr.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.fr.FreeBSD.org/pub/FreeBSD/ + + + ftp://ftp4.fr.FreeBSD.org/pub/FreeBSD/ + + + + ftp://ftp5.fr.FreeBSD.org/pub/FreeBSD/ + + + + ftp://ftp6.fr.FreeBSD.org/pub/FreeBSD/ + ドイツ 何か問題がある場合は, このドメインのミラー管理者 de-bsd-hubsr@de.FreeBSD.org に連絡してください. ftp://ftp.de.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.de.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.de.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.de.FreeBSD.org/pub/FreeBSD/ ftp://ftp5.de.FreeBSD.org/pub/FreeBSD/ ftp://ftp6.de.FreeBSD.org/pub/FreeBSD/ ftp://ftp7.de.FreeBSD.org/pub/FreeBSD/ 香港 ftp://ftp.hk.super.net/pub/FreeBSD/ 連絡先: ftp-admin@HK.Super.NET. アイルランド 何か問題がある場合は, このドメインの hostmaster hostmaster@ie.FreeBSD.org に連絡してください. ftp://ftp.ie.FreeBSD.org/pub/FreeBSD/ イスラエル 何か問題がある場合は, このドメインの hostmaster hostmaster@il.FreeBSD.org に連絡してください. ftp://ftp.il.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.il.FreeBSD.org/pub/FreeBSD/ 日本 何か問題がある場合は, このドメインの hostmaster hostmaster@jp.FreeBSD.org に連絡してください. ftp://ftp.jp.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.jp.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.jp.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.jp.FreeBSD.org/pub/FreeBSD/ ftp://ftp5.jp.FreeBSD.org/pub/FreeBSD/ ftp://ftp6.jp.FreeBSD.org/pub/FreeBSD/ 韓国 何か問題がある場合は, このドメインの hostmaster hostmaster@kr.FreeBSD.org に連絡してください. ftp://ftp.kr.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.kr.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.kr.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.kr.FreeBSD.org/pub/FreeBSD/ ftp://ftp5.kr.FreeBSD.org/pub/FreeBSD/ ftp://ftp6.kr.FreeBSD.org/pub/FreeBSD/ オランダ 何か問題がある場合は, このドメインの hostmaster hostmaster@nl.FreeBSD.org に連絡してください. ftp://ftp.nl.FreeBSD.org/pub/FreeBSD/ ニュージーランド 何か問題がある場合は, このドメインの hostmaster hostmaster@nz.FreeBSD.org に連絡してください. ftp://ftp.nz.FreeBSD.org/pub/FreeBSD/ ポーランド 何か問題がある場合は,このドメインの hostmaster hostmaster@pl.FreeBSD.org に連絡してください. ftp://ftp.pl.FreeBSD.org/pub/FreeBSD/ ポルトガル 何か問題がある場合は, このドメインの hostmaster hostmaster@pt.FreeBSD.org に連絡してください. ftp://ftp.pt.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.pt.FreeBSD.org/pub/FreeBSD/ ロシア 何か問題がある場合は, このドメインの hostmaster hostmaster@ru.FreeBSD.org に連絡してください. ftp://ftp.ru.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.ru.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.ru.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.ru.FreeBSD.org/pub/FreeBSD/ サウジアラビア 何か問題がある場合は, ftpadmin@isu.net.sa に連絡してください. ftp://ftp.isu.net.sa/pub/mirrors/ftp.freebsd.org/ 南アフリカ 何か問題がある場合は, このドメインの hostmaster hostmaster@za.FreeBSD.org に連絡してください. ftp://ftp.za.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.za.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.za.FreeBSD.org/pub/FreeBSD/ スロヴァキア共和国 何か問題がある場合には, このドメインの hostmaster hostmaster@sk.FreeBSD.org に連絡してください. ftp://ftp.sk.FreeBSD.org/pub/FreeBSD/ スロベニア 何か問題がある場合には, このドメインの hostmaster hostmaster@si.FreeBSD.org に連絡してください. ftp://ftp.si.FreeBSD.org/pub/FreeBSD スペイン 何か問題がある場合は, このドメインの hostmaster hostmaster@es.FreeBSD.org に連絡してください. ftp://ftp.es.FreeBSD.org/pub/FreeBSD/ スウェーデン 何か問題がある場合は, このドメインの hostmaster hostmaster@se.FreeBSD.org に連絡してください. ftp://ftp.se.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.se.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.se.FreeBSD.org/pub/FreeBSD/ 台湾 何か問題がある場合は, このドメインの hostmaster hostmaster@tw.FreeBSD.org に連絡してください. ftp://ftp.tw.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.tw.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.tw.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.tw.FreeBSD.org/pub/FreeBSD/ タイ ftp://ftp.nectec.or.th/pub/FreeBSD/ 連絡先: ftpadmin@ftp.nectec.or.th. ウクライナ ftp://ftp.ua.FreeBSD.org/pub/FreeBSD/ 連絡先: freebsd-mnt@lucky.net. イギリス 何か問題がある場合は, このドメインの hostmaster hostmaster@uk.FreeBSD.org に連絡してください. ftp://ftp.uk.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.uk.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.uk.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.uk.FreeBSD.org/pub/FreeBSD/ ftp://ftp5.uk.FreeBSD.org/pub/FreeBSD/ アメリカ 何か問題がある場合は, このドメインの hostmaster hostmaster@FreeBSD.org に連絡してください. ftp://ftp.FreeBSD.org/pub/FreeBSD/ ftp://ftp2.FreeBSD.org/pub/FreeBSD/ ftp://ftp3.FreeBSD.org/pub/FreeBSD/ ftp://ftp4.FreeBSD.org/pub/FreeBSD/ ftp://ftp5.FreeBSD.org/pub/FreeBSD/ ftp://ftp6.FreeBSD.org/pub/FreeBSD/
Anonymous CVS 訳: &a.jp.sugimura;, 1998 年 7 月 19 日. <anchor id="anoncvs-intro">導入 Anonymous CVS (もしくは, anoncvs として知られています) は離れたところにある CVS リポジトリと同期を取るために FreeBSD に付属している CVS ユーティリティに含まれている機能です. 他にもありますが, それは FreeBSD のユーザが, 特別な権限なしに FreeBSD プロジェクトの公式な anoncvs サーバに読み取り専用で CVS の操作をすることができるようにするためのものです. それを使うには, 単に CVSROOT 環境変数を設定して適切な anoncvs サーバを指定し, cvs login を使って パスワード anoncvs を入力してください. そして次に &man.cvs.1; コマンドを使うことで, 手元にあるリポジトリと同じようにアクセスできるようになります. - CVSup と + CVSup と anoncvs のサービスは本質的に同じ機能ではないかということも言われていますが, ユーザが同期を取る方法を選ぶときに影響を与える, さまざまなトレードオフが存在します. 要約して言えば, CVSup はネットワーク資源の使い方においては非常に効率が良く技術的にもはるかに洗練されたものですが, 相当な手間がかかります. CVSup を使うには特別なクライアントをまずインストールして設定しなくては 1 bit も取ってくることができませんし, さらにそのとき CVSup で取ってくることができるのは, コレクション(collection) と呼ばれる, かなり大きなかたまりだけです. それに対して anoncvs では, CVS モジュールの名前を指定することで特定のプログラムの (lsgrep のような) 個々のファイルから調べることができます. もちろん, anoncvs は CVS リポジトリの読み取り専用の操作に対してのみ適しているので, もしあなたが FreeBSD プロジェクトのものと共有されたなにか ローカルなリポジトリを作ってそこでの開発を 行おうというときには, CVSup だけが唯一の手段となってしまいます. <anchor id="anoncvs-usage">Anonymous CVS を使う &man.cvs.1; を設定して Anonymous CVS リポジトリを使うには単に CVSROOT 環境変数を設定して FreeBSD プロジェクトの anoncvs サーバを指定するだけのことです. この文書を書いているときには, 次のサーバが利用できるようになっています. USA: :pserver:anoncvs@anoncvs.freebsd.org:/ncvs (cvs login コマンドを使い, プロンプトが表示されたらパスワード anoncvs を入力してください) CVS はかつて存在した (もしくは, 時にはこれから存在するものも :) ほとんどどんなバージョンの FreeBSD のソースを check out することができますが, あなたは &man.cvs.1; の リビジョン () のオプションや FreeBSD プロジェクトのリポジトリの中で それをどのように指定したらいいものかということを よく知っておく必要があります. タグには 2 種類あって, リビジョンタグとブランチタグがあります. リビジョンタグは特定の改訂版を指しており, それはいつも同じものを意味しています. 一方ブランチタグは, 指定されたときの指定された開発の流れにおける 最も新しい改訂版を示しています. ブランチタグは特定の改訂版を指していないために, その意味はきょうと明日では違うものになっているでしょう. ユーザが興味を持つと思われるブランチタグの一覧です (Ports Collectionに有効なタグは HEAD だけだという事を心に留めておいてください). HEAD 主要部をなす流れ, すなわち FreeBSD-CURRENT のための名前です. また, どのリビジョンも 指定されなかったときにはこれになります. RELENG_4 FreeBSD-4.X の開発のための流れです. FreeBSD-STABLE としても知られています. RELENG_3 FreeBSD-3.X の開発のための流れです. 3.X-STABLE としても知られています. RELENG_2_2 FreeBSD-2.2.X の開発のための流れです. 2.2-STABLE としても知られています. このブランチは大部分が すたれています. ユーザが興味を持つであろうリビジョンタグの一覧です. これらはいずれも Ports Collection には無効です. Ports Collection は複数のリビジョンを持ちません RELENG_4_0_0_RELEASE FreeBSD 4.0 です. RELENG_3_4_0_RELEASE FreeBSD-3.4 です. RELENG_3_3_0_RELEASE FreeBSD-3.3 です. RELENG_3_2_0_RELEASE FreeBSD-3.2 です. RELENG_3_1_0_RELEASE FreeBSD-3.1 です. RELENG_3_0_0_RELEASE FreeBSD-3.0 です. RELENG_2_2_8_RELEASE FreeBSD-2.2.8 です. RELENG_2_2_7_RELEASE FreeBSD-2.2.7 です. RELENG_2_2_6_RELEASE FreeBSD-2.2.6 です. RELENG_2_2_5_RELEASE FreeBSD-2.2.5 です. RELENG_2_2_2_RELEASE FreeBSD-2.2.2 です. RELENG_2_2_1_RELEASE FreeBSD-2.2.1 です. RELENG_2_2_0_RELEASE FreeBSD-2.2.0 です. ブランチタグを指定したときには, 普通はその開発の流れにおける 最も新しいバージョンのファイルを受け取ることができます. もし以前のバージョンのものが欲しいときには, 日付を オプションを使って指定すればよいです. これ以上のことは &man.cvs.1; man page を見てください. 本当はなにかする前には &man.cvs.1; のマニュアルページの全体をちゃんと読んでからのほうがいいのですが, Anonymous CVS の使い方の本質的なところを簡単に例を挙げて説明します. -CURRENT (&man.ls.1;) をちょっと確認してから消してみます. &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.freebsd.org:/ncvs &prompt.user; cvs login プロンプトが表示されたら, パスワード anoncvs を入力します. &prompt.user; cvs co ls &prompt.user; cvs release -d ls &prompt.user; cvs logout &man.ls.1; のバージョンを 3.X-STABLE ブランチから調べてみます. &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.freebsd.org:/ncvs &prompt.user; cvs login プロンプトが表示されたら, パスワード anoncvs を入力します. &prompt.user; cvs co -rRELENG_3 ls &prompt.user; cvs release -d ls &prompt.user; cvs logout &man.ls.1; の変更点のリストを (unified diff で) 作ってみます. &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.freebsd.org:/ncvs &prompt.user; cvs login プロンプトが表示されたら, パスワード anoncvs を入力します. &prompt.user; cvs rdiff -u -rRELENG_3_0_0_RELEASE -rRELENG_3_4_0_RELEASE ls &prompt.user; cvs logout 他のどんなモジュールの名前が 使われているか検索してみます. &prompt.user; setenv CVSROOT :pserver:anoncvs@anoncvs.freebsd.org:/ncvs &prompt.user; cvs login プロンプトが表示されたら, パスワード anoncvs を入力します. &prompt.user; more modules/modules &prompt.user; cvs release -d modules &prompt.user; cvs logout 他の資料 次の資料は CVS を学ぶのに役に立つでしょう. CVS チュートリアル. Cal Poly によるものです. Cyclic Software, 商用として CVS を保守しています. CVSWeb は FreeBSD Project の CVS のための WWW インターフェースです. CTM を使う 訳: &a.hanai;, 1997 年 9 月 13 日. CTM はリモートのディレクトリツリーを中央のツリーに同期させるための 手段です. これはFreeBSDのソースツリーの配布を行なうために開発されまし たが, 時が経つにつれて別の目的にも有用であることがわかるかも しれません. デルタを作り出す処理に関するドキュメントは現在ほとんど ありません. 従って, もしあなたがCTM を他のことに使いたいなら &a.phk;にさらなる情報を問い合わせてください. なぜ<application>CTM</application>を使うの? CTM を使うことにより FreeBSD ソースツリーのローカルコピーを手にいれることができます. ソースツリーが使えることの魅力は数多くあります. 完全な cvs ツリーを追いかけるにしても, ひとつのブランチを追いかける にしても CTM は必要な情報を与えてくれます. もしあなたがFreeBSDのアクティブな開発者であるにもかかわらず お粗末なTCP/IP接続しか持っていなかったり, またはTCP/IP接続が 行なえないとしたら, あるいは単に変更が自動的に送られてきて ほしいというのであれば CTM はそんなあなたのために 作られたのです. アクティブなブランチでは 1 日に最大三つまでのデルタを受け取る必要があります. これが自動的に e-mail で送られてくるという方法を ぜひ検討してみてください. デルタのサイズは常にできるだけ小さく保たれています. 大抵の場合5KBよりも小さく, たまに(10回に1回程度)10-50KBになり, ときおり100KBかもっと大きくなるでしょう. 開発ソースから直接に得られたものを使うことについては, あらかじめパッケージにされたリリースとは違い, いろいろと注意することが あります. これは特に “current” のソースを選んでいるときは重要です. 最新の FreeBSD を追いかけるを読むことをお勧めします. <application>CTM</application>を使うには何が必要? 二つのものが必要でしょう: CTM プログラムとそれに与える (“current” レベルを得るための)最初のデルタです. CTM プログラムはバージョン2.0のリリース以来FreeBSDの一部にな りました. もしソースのコピーを持っているなら /usr/src/usr.sbin/CTMにあります. もしFreeBSDの2.0以前のバージョンなら, 最新のCTMのソースを直接 ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/src/usr.sbin/ctm/ から入手できます. CTM に与える “デルタ” は二つの方法, FTPまたはe-mail, で得ること ができます. もしインターネットにFTPアクセスできるなら, 次のFTPサイト: ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/ または, その ミラーサイト が CTM へのアクセスをサポートします. 適切なディレクトリに FTP して README ファイルを入手し, そこからスタートしてください. e-mail によってデルタを得たいという場合は: CTM 配布メーリングリストのいずれかに参加するために &a.majordomo; へ subscribe のメールを送ってください. “ctm-cvs-cur” は完全な cvs ツリー をサポートします. “ctm-src-cur” は開発先端ブランチをサポートします “ctm-src-2_2” は 2.2 リリースのブランチのサポートです. (もし majordomo を使って参加する方法を知らないのであれば, 最初に help という語を含むメッセージを送ってください. — 使い方の説明が送られてくるでしょう.) メールで CTM による更新ファイルを受け取り始めると, 中身を取り出して使用 するために ctm_rmail プログラムを使うかもしれません. それを完全 に自動で行ないたいなら, /etc/aliases から ctm_rmailプロ グラムを直接使うこともできます. さらに詳しいことはctm_rmail manページを御覧ください. CTM デルタを得るためにどの方法を使うのであっても, ctm-announce@FreeBSD.org メーリングリストに参加するべきです. このメーリングリストは将来的には CTMシステムの操作に関する アナウンスがポストされる唯一の場になるでしょう. メーリングリストに加わるためにはsubscribe ctm-announce と書いた一行だけのメールを &a.majordomo; へ送ってください. はじめて<application>CTM</application>を使い始める CTM デルタを使い始めるためには, これは以降作られる全ての デルタの出発点を手にいれる必要があります. 最初にあなたが何をすでに持っているかをはっきりさせましょう. すべての人は “空”のディレクトリから始めなければなりません. ツリーをサポートしてるあなたの CTM を稼働するためには 指定した“空” のデルタを使う必要があります. いくつかの分岐点 では, あなたの都合により CD 内に分配されている“スタータ” デルタを使用できるようになっています. しかしながら, これは 頻繁に行われることではありません. 適切な出発点が決まれば, その出発点を CTM が 維持するツリーへ変換するための “スタータ” 初期デルタを使う必要が あります. 移行デルタは番号の後ろに X をつけたものがそうです (たとえばsrc-cur.3210XEmpty.gz). X の後ろは最初の開始ポイントに対応します. Empty は 空のディレクトリです. ルールとして Empty からの移行デルタは 100 デルタごとに 作られます. ところで, これらは非常に大きいです! XEmptyのデルタは 数十MBの gzip で圧縮されたデータというのが普通です. 一度スタートするためのベースデルタを得ると, それに続く多数の全てのデルタも必要になるでしょう. <application>CTM</application>を日常で使う デルタを適用するためには, 単に &prompt.root; cd /where/ever/you/want/the/stuff &prompt.root; ctm -v -v /where/you/store/your/deltas/src-xxx.* とします. CTM はどれがgzipされているか理解します. 従って最初に gunzipしておく必要はありません. ディスクの節約にもなります. 全体の処理に関して確信するまでは CTM は(ソース)ツリーに対して 何もしません. また, デルタを確かめるためには フラグを使うことができます. このフラグがあると CTM はツリーに対して実際には何も行ないません. 単にデルタの完全性を確認し, 現在のツリーに問題なく使用できるかを確認 するだけです. CTM には他にもオプションがあります. 詳細に関しては マニュアルページを参照するかソースを見てください. もし誰かが “ユーザ インターフェース” の部分に関して助けてくれるなら私はとても嬉しいです. なぜならどういうオプションが何を, どのように, いつ行なうようにするべきか決めかねているからです. 以上でやることは本当に全部です. 新しいデルタを入手した時には, ソースを最新のものにするためにそれを CTMに通すだけです. もしデルタを再ダウンロードするのが 骨の折れる作業であれば, デルタを 消さないでおいてください. なにかおかしなことが起こった場合には置いておけば良かった と思うかもしれません. もしフロッピーディスクしか持っていない状況 であってもコピーを取るのに fdwriteを使うことを考えてください. ローカルの変更を保存する 開発者としてはソースツリー中のファイルを 使って実験したり変更したく なるものです. CTM はローカルの変更を制限つきでサポートします: ファイル foo の存在をチェックする前に, foo.ctm を参照しにいきます. このファイルが存在する場合, CTM は foo の代りにこれを処理します. この動作はローカルの変更を保持する簡単な手段を 提供します: 単に変更したいファイルを拡張子 .ctm 付きのファイル名で コピーするだけです. あとは自由にコードをハックでき, .ctm ファイルの方は CTM が最新状態に保ってくれます. <application>CTM</application> のその他の面白いオプション 更新で変更されるファイルを正確に知る CTM のソースリポジトリに対する変更のリストを オプションを使って決定することができます. これは, 変更のログを保存したい, 変更されたファイルをなんらかの方法で 前・後処理したい, または単にこだわりたい :-) 場合には, 役に立つでしょう. 更新前にバックアップを取る CTM の更新によって変更されるファイルすべてのバックアップを 取りたくなることがあります. オプションを指定すると CTM は デルタで変更されるファイルすべてを backup-file としてバックアップするようになります. 更新で変更されるファイルを制限する CTM の更新の範囲を制限したり一連のデルタのから ほんの数ファイルを抽出したくなることがあります. オプションを用い正規表現を指定することで, CTM が処理するファイルのリストを制御することが できます. 例えば, lib/libc/Makefile の最新のコピーを保存してある CTM デルタのコレクションから抽出するには, 以下のコマンドを実行します. &prompt.root; cd /where/ever/you/want/to/extract/it/ &prompt.root; ctm -e '^lib/libc/Makefile' ~ctm/src-xxx.* CTM デルタで指定されたファイルごとに, そして オプションがコマンドラインで指定された順序で適用されます. すべての そして オプションが適用された後に更新対象と選択された場合に限り, CTM はそのファイルを処理します. <application>CTM</application>の将来計画 重要なもの なんらかの CTM システムへの認証機構を用い, 不正な CTM の更新の検出を可能とする. CTM へのオプションを整理する. さもないと混乱し, 直観に反したものになります. その他 ports コレクションに対するデルタもあるのですが, これに興味を持っている人はまだ少ないようです. もしこれに対するメーリングリストが欲しい時はセットアップを行ないますので, わたしの方まで連絡ください. CTM サイト CTM/FreeBSD は以下のミラーサイトから anonymous FTP によって入手できます. もし CTM を anonymous FTP によって手にいれる場合は, 近くのサイトを利用するようにしてください. 何か問題がある場合は, &a.phk;に連絡してください. カリフォルニア, サンフランシスコ近辺, 公式なソース ftp://ftp.FreeBSD.org/pub/FreeBSD/CTM/ ドイツ, トリエル ftp://ftp.uni-trier.de/pub/unix/systems/BSD/FreeBSD/CTM/ 南アフリカ, ctm, sup, CVSupなどの古い差分ファイルのバックアップサーバ ftp://ftp.za.FreeBSD.org/pub/FreeBSD/CTM/ 台湾/中華民国, チャーイー(嘉義) ftp://ctm.tw.FreeBSD.org/pub/freebsd/CTM/ ftp://ctm2.tw.FreeBSD.org/pub/FreeBSD/CTM/ ftp://ctm3.tw.FreeBSD.org/pub/freebsd/CTM/ 近くにミラーサイトがない場合やミラーが不完全な場合は, http://ftpsearch.ntnu.no/ftpsearchFTP search を試してください. FTP search はノルウェーの Trondheim にある, フリーの素晴らしい アーカイブサーバです. CVSup を使う 訳: &a.jp.iwasaki;, 1997 年 2 月 27 日. 紹介 CVSup は, リモートのサーバホストにあるマスタ CVS リポジトリから ソースツリーを配布し更新するための ソフトウェアパッケージです. FreeBSD のソースは, カリフォルニアにある中心的な開発マシンの CVS リポジトリの 中でメンテナンスしています. CVSup を使用することで, FreeBSD ユーザは 簡単に自分のソースツリーを最新の状態に しておくことができます. CVSuppull モデルとよばれる更新のモデルを採用しています. pull モデルでは, 各クライアントが更新したい場合に更新したい時点で, サーバに更新の問い合わせをおこないます. サーバはクライアントからの 更新の要求を受け身の状態で待ちます. したがって, すべての更新はクライアント主導でおこなわれます. サーバは頼まれもしない更新情報を送るようなことはしません. ユーザは CVSup クライアントを手動で実行して更新をおこなうか, cron ジョブを設定して定期的に自動実行する必要があります. 用語 CVSup のように大文字で表記しているものは, ソフトウェアパッケージ 全体を指します. 主な構成物は, 各ユーザマシンで実行するクライアントである cvsup, FreeBSD の各ミラーサイトで実行するサーバ cvsupd です. FreeBSD の文書やメーリングリストを読んだ際に, sup についての言及を 見かけたかもしれません. supCVSup の前に存在していたもので, 同様の目的で使われていました. CVSup は sup と同じように使用されており, 実際, sup と互換性のあるコンフィグレーションファイルを使用します. CVSup の方がより高速で柔軟性もあるので, もはや sup は FreeBSD プロジェクトでは使用されていません. インストール CVSup をインストールする 最も簡単な方法は, FreeBSD ports コレクション の net/cvsup-bin をインストールすることです. もしくは, net/cvsup でも構いません. ただし, net/cvsup は Modula-3 システムに依存していて, 構築にかかる時間, メモリ, ディスクスペースは比較的大きくなります. もし, あなたに cvsup に関して全く知識がなく, 自動で設定ファイルをセットアップして, クリックするだけで転送を行なえるインターフェイスを提供してくれるような, 単一のパッケージをインストールしたいと考えているなら, cvsupit パッケージを利用して下さい. これは &man.pkg.add.1; するだけで良く, 設定は, その際にメニュー形式で行なうことができるようになっています. CVSup のコンフィグレーション CVSup の動作は, supfile と呼ばれるコンフィグレーションファイルで 制御します. supfile のサンプルは, ディレクトリ /usr/share/examples/cvsup/ の下にあります. supfile には以下の cvsup に関する質問への答えを記述します: どのファイルを受け取りたいのか? どのバージョンのものが欲しいのか? どこから入手したいのか? 自分のマシンのどこに置きたいのか? どこに status ファイルを置きたいのか? 次のセクションで, これらの質問に順番に答えながら典型的な supfile を組み立てていきます. 最初に supfile の全体構造を説明します. supfile はテキストファイルです. コメントは # から行末までです. 空行とコメントだけの行は無視します. 残りの各行には, ユーザが受け取りたいファイル群について記述します. 行の始めは, サーバ側で定義した論理的なファイルのグループである コレクションの名称です. コレクションの名称を指定して, 欲しいファイル群を サーバに伝えます. コレクション名の後には, ホワイトスペースで区切られた 0 個以上のフィールドが続きます. これらのフィールドが上記の質問に対する答えになります. フィールドには 2 種類あります: flag フィールドと value フィールドです. flag フィールドは deletecompress のような 単独のキーワードから成ります. また, value フィールドもキーワードで始まりますが, キーワードの後にはホワイトスペースは入らず, = と二つめの単語が続きます. 例えば, release=cvs は value フィールドです. 通常, supfile には受け取りたいコレクションを一つ以上指定します. supfile を組み立てる一つの方法として, コレクション毎にすべての関係の あるフィールドを明示的に指定する方法があります. しかし, これでは supfile のすべてのコレクションに対して ほとんどのフィールドが同じになるため, 行が非常に長くなってしまい不便になります. これらの問題を避けるため, CVSup ではデフォルトを指定することのできる メカニズムが提供されています. 特殊な擬似コレクション名 *default で始まる行は, supfile 中の後続の コレクションに対して使用する flag フィールドと value フィールドのデフォルトを設定するために利用できます. 個々のコレクションで固有の値を指定すると, デフォルト値を無効にできます. また 行を追加すると, supfile の途中からデフォルト値の変更や追加が可能になります. これまでの予備知識を基に, FreeBSD-current のメインのソースツリーを受け取って更新するための supfile を組み立ててみましょう. どのファイルを受け取りたいのか? CVSup を通して入手できるファイルは コレクション と呼ばれる名前の付けられたグループにまとめられています. 利用可能なコレクションについては ここ で説明しています. ここでは, FreeBSD システムのメインのソースツリー全体 を受け取るための設定例を紹介します. すべてを含む src-all という単一の大きなコレクションがあります. supfile を組み立てる最初のステップとして, これらのコレクションを一行に一つずつ記述します (この場合は一行だけです). src-all どのバージョンのものが欲しいのか? CVSup を使用すると, かつて存在していたことのある, 事実上どのバージョンの ソースでも受け取ることができます. これは cvsupd サーバがすべてのバージョンを含む CVS リポジトリに基づいて動作することにより, 実現されています. tag= および の value フィールドを使用して, 欲しいバージョンの 一つを指定します. tag= のフィールドの指定は正確に行うように十分注意 してください. いくつかのタグは特定のコレクションに 対してのみ有効です. タグの綴りが違っていたり不適切なタグを指定すると, CVSupはユーザが消し たくないファイルまで削除してしまいます. 特に ports-* のコレクション に対しては tag=. だけ を指定するようにしてください. tag= フィールドはリポジトリ中のシンボリックタグを指定します. tag には revision tag と branch tag の二種類があります. revision tag は特定のリビジョンを指します. これは, 毎日同じ状態に保つことになります. 一方 branch tag は, ある時点での開発分流の最新のリビジョンを指します. branch tag は特定のリビジョンを指定している訳ではないので, 今日と明日では 異なるリビジョンを参照することになるかもしれません. 以下はユーザが興味を持っていると思われる branch tag です. tag=. だけが ports コレクションには 適切であることに注意してください. tag=. メインの開発分流であり, FreeBSD-CURRENT として知られています. 注意: . は句読点ではありません. tag の名称です. このタグの指定は総ての コレクションに対して有効です. tag=RELENG_4 FreeBSD-4.X 用の開発分流であり, FreeBSD-STABLE として知られています. tag=RELENG_3 FreeBSD-3.X 用の開発分流です. tag=RELENG_2_2 FreeBSD-2.2.X 用の開発分流であり, 2.2-STABLE として知られています. 以下はユーザが興味を持っていると思われる revision tag です. 以下は ports コレクションには不適切であることに 再度注意してください. tag=RELENG_4_0_0_RELEASE FreeBSD-4.0. tag=RELENG_3_4_0_RELEASE FreeBSD-3.4. tag=RELENG_3_3_0_RELEASE FreeBSD-3.3. tag=RELENG_3_2_0_RELEASE FreeBSD-3.2. tag=RELENG_3_1_0_RELEASE FreeBSD-3.1. tag=RELENG_3_0_0_RELEASE FreeBSD-3.0. tag=RELENG_2_2_8_RELEASE FreeBSD-2.2.8. tag=RELENG_2_2_7_RELEASE FreeBSD-2.2.7. tag=RELENG_2_2_6_RELEASE FreeBSD-2.2.6. tag=RELENG_2_2_5_RELEASE FreeBSD-2.2.5. tag=RELENG_2_2_2_RELEASE FreeBSD-2.2.2. tag=RELENG_2_2_1_RELEASE FreeBSD-2.2.1. tag=RELENG_2_2_0_RELEASE FreeBSD-2.2.0. tag 名を示した通りにタイプされているか十分注意してく ださい. CVSup は tag 名が正しいかどうかを見分けることはできません. tag が間違っていた場合, たまたまファイルがまったく存在しない正しい tag が 指定されたものとしてCVSup は動作します. その場合は, 現在あるソースが削 除されるでしょう. branch tag を指定した際には, 通常はその開発分流の最新バージョンの ファイルを受け取ります. いくらか前のバージョンを受け取りたい場合は, の value フィールドを使って日付を指定することで, これを実現することが できます. &man.cvsup.1; のマニュアルページで, その方法を説明しています. 例として, FreeBSD-current を受け取りたいとします. 次の行を supfile の始めに追加します: *default tag=. tag= フィールドも date= フィールドも指定しなかった場合に 動き出す重要な特殊なケースがあります. そのケースでは, 特定のバージョンの ファイルを受け取るのではなく, サーバの CVS リポジトリから実際の RCS ファイルを直接受け取ります. 一般的に開発者はこの処理のモードが 好きなようです. 彼らのシステム上にリポジトリそのものの コピーを維持することで, リビジョン履歴を閲覧し過去のバージョンの ファイルを検査できるようになります. しかし, これには大きなディスクスペースが必要になります. どこから入手したいのか? 更新情報をどこから入手するかを cvsup に伝えるために host= フィールドを使用します. - CVSup ミラーサイト + CVSup ミラーサイト のどこからでも入手できますが, ネット上での最寄りのサイトを選ぶべきでしょう. この例では, 仮想上の FreeBSD 配布サイト cvsup666.FreeBSD.org を使用します: *default host=cvsup666.FreeBSD.org CVSup を実行する前にホスト名を 実在のものに変更する必要があります. どのように cvsup を実行しても, この設定は を 使用してコマンドラインで変更することができます. 自分のマシンのどこに置きたいのか? prefix= フィールドは, cvsup に受け取ったファイルをどこに置くかを 伝えます. この例では, ソースファイルを直接メインのソースツリー /usr/src に置きます. src ディレクトリはすでにファイルを受け取るために 選択したコレクションで暗黙に指定しているので, これは正しい仕様となります: *default prefix=/usr どこに status ファイルを置きたいのか? cvsup クライアントは base ディレクトリと呼ばれる場所に, ある status ファイルを維持しています. すでに受け取った更新情報を追従し続けることで, これらのファイルは CVSup がより効果的に動作することを支援します. 標準の base ディレクトリ /usr/local/etc/cvsup を使用します: *default base=/usr/local/etc/cvsup supfile に指定がない場合は, この設定をデフォルトで使用しますので, 実際には上の行は必要ありません. base ディレクトリが存在しない場合は作成しておきましょう. base ディレクトリが存在しない場合, cvsup クライアントは実行を拒否します. その他もろもろの supfile の設定: 通常 supfile に入れておくべき行がもう一つあります: *default release=cvs delete use-rel-suffix compress release=cvs は, サーバがメインの FreeBSD CVS リポジトリから その情報を取得するように指示します. ほとんどの場合はこのようにしておきますが, ここでの説明の範疇をこえるような 状況では他の指定をすることも可能です. deleteCVSup にファイルを削除することを許可します. CVSup が ソースツリーを完全に最新の状態に 保てるようにするためには, これは常に 指定しておくべきでしょう. CVSup は, これらの責任範囲のファイルだけを 慎重に削除します. たまたま存在する他の余分なファイルについては, まったく手をつけずに残しておきます. use-rel-suffix は ... 神秘的なものです. これについて本当に知りたい人は, &man.cvsup.1; のマニュアルページをご覧ください. でなければ, 何も考えずに指定してみてください. compress は通信チャネルで gzip 形式の圧縮の使用を有効にします. ご使用のネットワーク接続が T1 speed 以上である場合, この圧縮を使用しない方がよいかもしれません. そうでない場合は十分に役に立ちます. supfile の例のまとめ: 以下は supfile の例の全体です: *default tag=. *default host=cvsup666.FreeBSD.org *default prefix=/usr *default base=/usr/local/etc/cvsup *default release=cvs delete use-rel-suffix compress src-all 拒否ファイル(refuse file) 既に述べたように, CVSup取り寄せ法(pull method)を用いるのですが, これは基本的に次のようなことを意味します. まずあなたが CVSup サーバに接続します. するとサーバは あなたがダウンロードできるのはこれこれですと言います. それに対し, あなたが使っているクライアントは わかりました. では, これとこれとこれをもらいますと答えます. デフォルトの設定の CVSup クライアントは, 設定ファイルで選んだコレクションとタグに適合する すべてのファイルを取得します. しかし, これは常にあなたの望む動作と一致するとは限りません. 特に doc や ports や www のツリーを同期させる場合などはそうでしょう. ほとんどの人は四か国語も五か国語も操れるわけではありませんから, 特定の言語のファイルのダウンロードは必要ないでしょう. Ports コレクションを CVSup で取得する場合には, 各コレクションを個別に指定することができます (たとえば, 単に ports-all とするかわりに ports-astrology, ports-biology などと書きます). 一方, doc と www のツリーは言語別のコレクションになっていません. そこであなたは CVSup のたくさんある洗練された機能の一つ, 拒否ファイル(refuse file) 機能を使う必要があります. 拒否ファイル(refuse file)CVSup に対し, コレクションに含まれる一部のファイルを取得することを伝えます. 言い換えれば, それはクライアントに対し, サーバから来る一部のファイルを拒否するよう指定するということです. 拒否ファイルは base/sup/refuse にあります(もしファイルがない場合には作成してください). base は supfile 内で定義されています. デフォルトでは /usr/sup です. つまり, 拒否ファイルのデフォルトは /usr/sup/refuse ということになります. 拒否ファイルの書式は, 単にダウンロードしたくないファイルや ディレクトリの名前が書いてあるだけの非常にシンプルなものです. たとえば, 私は英語以外はドイツ語を少し話せるだけで, しかもドイツ語のアプリケーションの必要を感じないので 拒否ファイルは以下のように書いています. ports/chinese ports/german ports/japanese ports/korean ports/russian ports/vietnamese doc/es_ES.ISO_8859-1 doc/ja_JP.eucJP 他の言語についても同様です. 拒否ファイルの中ではリポジトリの名前が ディレクトリの先頭部分に対応することに注意してください. この実に便利な機能を使うと まったく必要としないファイルをダウンロードする必要がなくなり, インターネット接続の回線が遅かったり従量制で課金されている人は 貴重な時間を節約できるようになります. 拒否ファイルの詳細や CVSup が持つその他の便利な機能に関しては マニュアルページを参照してください. <application>CVSup</application> の実行 さて, 更新の準備ができました. これを実行するコマンドラインは実に簡単です: &prompt.root; cvsup supfile もちろん, ここでの supfile は作成したばかりの supfile のファイル名です. X11 環境で実行するものと仮定して, cvsup は 通常の操作に必要なボタンを持つ GUI ウィンドウを表示します. go ボタンを押して, 実行を監視してください. この例では実際の /usr/src ツリーを更新しているので, cvsup にファイルを更新するのに必要なパーミッションを与えるために, ユーザ root で実行する必要があります. コンフィグレーションファイルを作ったばかりで, しかも以前にこのプログラムを実行したことがないので, 神経質になるのは無理もない話だと思います. 大切なファイルに触らずに試しに実行する簡単な方法があります. どこか適当な場所に空のディレクトリを作成して, コマンドラインの引数で指定するだけです: &prompt.root; mkdir /var/tmp/dest &prompt.root; cvsup supfile /var/tmp/dest 指定したディレクトリは, すべての更新されるファイルの 更新先ディレクトリとして使用します. CVSup/usr/src の下のファイルを検査しますが, 変更や削除はまったくおこないません. かわりに /var/tmp/dest/usr/src に更新されたすべてのファイルが置かれるようになります. この方法で実行した場合は, CVSup は base ディレクトリの status ファイルを更新せずにそのままにします. これらのファイルの新しいバージョンは指定されたディレクトリ に書き込まれます. /usr/src の読み取り許可がある限り, このような試し実行のためにユーザ root になる必要はありません. X11 を利用していないとか単に GUI が気に入らない場合は, cvsup 起動時にコマンドラインに 二つほどオプションを追加する必要があります: &prompt.root; cvsup -g -L 2 supfile オプションは cvsup に GUI を使用しないように伝えます. X11 を利用していない場合には自動的に指定されますが, そうでない場合は 明示的に指定します. オプションは cvsup にファイル更新中の詳細情報をプリントアウト するように伝えます. 冗長性には から までの三つのレベル があります. デフォルトは 0 であり, エラーメッセージ以外はまったく出力 しません. たくさんの他のオプション変数があります. それらの簡単な一覧は cvsup -H で表示されます. より詳しい説明はマニュアルページをご覧ください. 動作している更新の方法に満足したら, &man.cron.8; を使って cvsup を定期的に 実行させる準備をすることができます. cron から起動する際には, 明示的に cvsup が GUI を使わないようにする必要があります. <application>CVSup</application> ファイルコレクション CVSup 経由で入手できるファイルコレクションは 階層的に組織化されています. いくつか大きなコレクションがあり, それらは小さなサブコレクションに 分割されています. 大きなコレクションは, そのサブコレクション毎に 受信することと同じことになります. 下の一覧ではコレクション間の階層関係を 字下げして表現します. 最も一般的に使用するコレクションは src-all, ports-all です. 他のコレクションは特別な目的を持つ人達だけが使用しており, ミラーサイトはそれらのすべてを 持っていないかもしれません. cvs-all release=cvs メインの FreeBSD CVS リポジトリであり, 暗号のコードを含んでいます. distrib release=cvs FreeBSD の配布とミラーに関連するファイルです. doc-all release=cvs FreeBSD ハンドブックおよびその他のドキュメントの ソースです. ports-all release=cvs FreeBSD の ports コレクションです. ports-archivers release=cvs アーカイビングのツール. ports-astro release=cvs 天文学関連の ports. ports-audio release=cvs サウンドサポート. ports-base release=cvs /usr/ports のトップにあるその他のファイル. ports-benchmarks release=cvs ベンチマークプログラム. ports-biology release=cvs 植物学関連のプログラム. ports-cad release=cvs CAD ツール. ports-chinese release=cvs 中国語サポート. ports-comms release=cvs 通信ソフトウェア. ports-converters release=cvs 文字コードコンバータ. ports-databases release=cvs データベース. ports-deskutils release=cvs コンピュータが発明される前に 卓上で使われていたものたち. ports-devel release=cvs 開発ユーティリティ. ports-editors release=cvs エディタ. ports-emulators release=cvs 他の OS のエミュレータ. ports-ftp release=cvs FTP クライアントとサーバ. ports-games release=cvs ゲーム. ports-german release=cvs ドイツ語サポート. ports-graphics release=cvs グラフィックユーティリティ. ports-irc release=cvs インターネットリレーチャット(IRC)用のユーティリティ ports-japanese release=cvs 日本語サポート. ports-java release=cvs Java ユーティリティ ports-korean release=cvs 韓国語サポート. ports-lang release=cvs プログラミング言語. ports-mail release=cvs メールソフトウェア. ports-math release=cvs 数値計算ソフトウェア. ports-mbone release=cvs MBone アプリケーション. ports-misc release=cvs 色々なユーティリティ. ports-net release=cvs ネットワーキングソフトウェア. ports-news release=cvs USENET ニュースのソフトウェア. ports-palm release=cvs 3Com Palm(tm) シリーズ用ソフトウェア. ports-print release=cvs 印刷ソフトウェア. ports-russian release=cvs ロシア語サポート. ports-security release=cvs セキュリティユーティリティ. ports-shells release=cvs コマンドラインシェル. ports-sysutils release=cvs システムユーティリティ. ports-textproc release=cvs 文書処理ユーティリティ (デスクトップパブリッシングは含まない). ports-vietnamese release=cvs ベトナム語サポート. ports-www release=cvs World Wide Web 関連のソフトウェア. ports-x11 release=cvs X window システムをサポートする ports. ports-x11-clocks release=cvs X11 上で動作する時計の数々. ports-x11-fm release=cvs X11 上で動作するファイラ. ports-x11-fonts release=cvs X11 のフォントとフォントユーティリティ. ports-x11-toolkits release=cvs X11 のツールキット. ports-x11-servers 各種 X11 サーバ ports-x11-wm release=cvs X11 のウィンドウマネージャ. src-all release=cvs メインの FreeBSD ソース群であり, 暗号のコードを含んでいます. src-base release=cvs /usr/src のトップにあるその他のファイル. src-bin release=cvs シングルユーザモードで必要な ユーザユーティリティ (/usr/src/bin). src-contrib release=cvs FreeBSD プロジェクト外部からの ユーティリティおよびライブラリ, 比較的無修正 (/usr/src/contrib). src-crypto release=cvs FreeBSD プロジェクトの外部で開発された暗号ユーティリティとライブラリ. ほとんどそのままの形で使われます. (/usr/src/crypto). src-eBones release=cvs Kerberos と DES (/usr/src/eBones). 現在の FreeBSD リリースでは使われていません. src-etc release=cvs システムコンフィグレーションファイル (/usr/src/etc). src-games release=cvs ゲーム (/usr/src/games). src-gnu release=cvs GNU Public License 下にあるユーティリティ (/usr/src/gnu). src-include release=cvs ヘッダファイル (/usr/src/include). src-kerberos5 release=cvs Kerberos5 セキュリティパッケージ (/usr/src/kerberos5). src-kerberosIV release=cvs KerberosIV セキュリティパッケージ (/usr/src/kerberosIV). src-lib release=cvs ライブラリ (/usr/src/lib). src-libexec release=cvs システムプログラムであり, 通常は他のプログラムから実行される (/usr/src/libexec). src-release release=cvs FreeBSD の release を構築するために必要なファイル (/usr/src/release). src-secure release=cvs DES (/usr/src/secure). src-sbin release=cvs シングルユーザモード用の システムユーティリティ (/usr/src/sbin). src-share release=cvs 多様なシステム間で共有可能なファイル (/usr/src/share). src-sys release=cvs カーネル (/usr/src/sys). src-sys-crypto release=cvs カーネル用の暗号コード (/usr/src/sys/crypto). src-tools release=cvs FreeBSD の保守用の色々なツール (/usr/src/tools). src-usrbin release=cvs ユーザユーティリティ (/usr/src/usr.bin). src-usrsbin release=cvs システムユーティリティ (/usr/src/usr.sbin). www release=cvs World Wide Web のデータ用のソースです. distrib release=self CVSup サーバ自身のコンフィグレーションファイルです. CVSup ミラーサイトが使用します. gnats release=current GNATS バグトラッキングデータベースです. mail-archive release=current FreeBSD 関連メーリングリストのアーカイブ. www release=current インストールされた World Wide Web のデータです. WWW ミラーサイトが使用します. 詳細について CVSup の FAQ や CVSup に関するその他の情報については The CVSup Home Page をご覧ください. CVSup のほとんどの FreeBSD 関連の議論は &a.hackers; でおこなわれています. ソフトウェアの新しいバージョンは &a.announce; で アナウンスされます. 質問とバグ報告はプログラムの作者, cvsup-bugs@polstra.com へ 送ってください. - + CVSup サイト - FreeBSD の CVSup + FreeBSD の CVSup サーバは以下のサイトで稼働しています: アルゼンチン cvsup.ar.FreeBSD.org (保守担当 msagre@cactus.fi.uba.ar) オーストラリア cvsup.au.FreeBSD.org (保守担当 dawes@xfree86.org) cvsup3.au.FreeBSD.org (保守担当 FreeBSD@admin.gil.com.au) オーストリア cvsup.at.FreeBSD.org (保守担当 postmaster@wu-wien.ac.at) ブラジル cvsup.br.FreeBSD.org (保守担当 cvsup@cvsup.br.FreeBSD.org) cvsup2.br.FreeBSD.org (保守担当 tps@ti.sk) cvsup3.br.FreeBSD.org (保守担当 camposr@matrix.com.br) カナダ cvsup.ca.FreeBSD.org (保守担当 dan@jaded.net) 中国 cvsup.cn.FreeBSD.org (保守担当 phj@cn.FreeBSD.org) チェコ cvsup.cz.FreeBSD.org (保守担当 cejkar@dcse.fee.vutbr.cz) デンマーク cvsup.dk.FreeBSD.org (保守担当 jesper@skriver.dk) エストニア cvsup.ee.FreeBSD.org (保守担当 taavi@uninet.ee) フィンランド cvsup.fi.FreeBSD.org (保守担当 count@key.sms.fi) cvsup2.fi.FreeBSD.org (保守担当 count@key.sms.fi) フランス cvsup.fr.FreeBSD.org (保守担当 hostmaster@fr.FreeBSD.org) + + + cvsup2.fr.FreeBSD.org + (保守担当 ftpmaint@uvsq.fr) + ドイツ cvsup.de.FreeBSD.org (保守担当 wosch@FreeBSD.org) cvsup2.de.FreeBSD.org (保守担当 petzi@FreeBSD.org) cvsup3.de.FreeBSD.org (保守担当 ag@leo.org) + + + + cvsup4.de.FreeBSD.org + (保守担当 cvsup@cosmo-project.de) アイスランド cvsup.is.FreeBSD.org (保守担当 adam@veda.is) 日本 cvsup.jp.FreeBSD.org (保守担当 cvsupadm@jp.FreeBSD.org) cvsup2.jp.FreeBSD.org (保守担当 max@FreeBSD.org) cvsup3.jp.FreeBSD.org (保守担当 shige@cin.nihon-u.ac.jp) cvsup4.jp.FreeBSD.org (保守担当 cvsup-admin@ftp.media.kyoto-u.ac.jp) cvsup5.jp.FreeBSD.org (保守担当 cvsup@imasy.or.jp) cvsup6.jp.FreeBSD.org (保守担当 cvsupadm@jp.FreeBSD.org) 韓国 cvsup.kr.FreeBSD.org (保守担当 cjh@kr.FreeBSD.org) cvsup2.kr.FreeBSD.org (保守担当 holywar@mail.holywar.net) オランダ cvsup.nl.FreeBSD.org (保守担当 xaa@xaa.iae.nl) cvsup2.nl.FreeBSD.org (保守担当 cvsup@nl.uu.net) ノルウェー cvsup.no.FreeBSD.org (保守担当 Per.Hove@math.ntnu.no) ポーランド cvsup.pl.FreeBSD.org (保守担当 Mariusz@kam.pl) ポルトガル cvsup.pt.FreeBSD.org (保守担当 jpedras@webvolution.net) ロシア cvsup.ru.FreeBSD.org (保守担当 ache@nagual.pp.ru) cvsup2.ru.FreeBSD.org (保守担当 dv@dv.ru) cvsup3.ru.FreeBSD.org (保守担当 fjoe@iclub.nsu.ru) スロヴァキア共和国 cvsup.sk.FreeBSD.org (保守担当 tps@tps.sk) cvsup2.sk.FreeBSD.org (保守担当 tps@tps.sk) スロベニア cvsup.si.FreeBSD.org (保守担当 blaz@si.FreeBSD.org) 南アフリカ cvsup.za.FreeBSD.org (保守担当 markm@FreeBSD.org) cvsup2.za.FreeBSD.org (保守担当 markm@FreeBSD.org) スペイン cvsup.es.FreeBSD.org (保守担当 jesusr@FreeBSD.org) スウェーデン cvsup.se.FreeBSD.org (保守担当 pantzer@ludd.luth.se) 台湾 cvsup.tw.FreeBSD.org (保守担当 jdli@freebsd.csie.nctu.edu.tw) cvsup2.tw.FreeBSD.org (保守担当 ycheng@sinica.edu.tw) cvsup3.tw.FreeBSD.org (保守担当 foxfair@FreeBSD.org) ウクライナ cvsup2.ua.FreeBSD.org (保守担当 freebsd-mnt@lucky.net) cvsup3.ua.FreeBSD.org (保守担当 ftpmaster@ukr.net), キエフ cvsup4.ua.FreeBSD.org (保守担当 phantom@cris.net) イギリス cvsup.uk.FreeBSD.org (保守担当 joe@pavilion.net) cvsup2.uk.FreeBSD.org (保守担当 brian@FreeBSD.org) cvsup3.uk.FreeBSD.org (保守担当 ftp-admin@plig.net) アメリカ cvsup1.FreeBSD.org (保守担当 skynyrd@opus.cts.cwu.edu), ワシントン州 cvsup2.FreeBSD.org (保守担当 jdp@FreeBSD.org), カリフォルニア州 cvsup3.FreeBSD.org (保守担当 wollman@FreeBSD.org), マサチューセッツ州 cvsup4.FreeBSD.org (保守担当 rgrimes@FreeBSD.org), オレゴン州 cvsup5.FreeBSD.org (保守担当 mjr@blackened.com), アリゾナ州 cvsup6.FreeBSD.org (保守担当 jdp@FreeBSD.org), フロリダ州 cvsup7.FreeBSD.org (保守担当 jdp@FreeBSD.org), ワシントン州 cvsup8.FreeBSD.org (保守担当 hostmaster@bigmirror.com), ワシントン州 以下の CVSup サイトは, CTM ユーザのことを特に考慮して運用されています. 他の CVSup のミラーサイトとは異なり, これらのサイトでは CTM を使って最新の状態を保っています. つまり, もし以下の サイトから cvs-allrelease=cvsCVSup すれば, CTMcvs-cur のデルタを使って更新するのに適した CVS のリポジトリ (必須となる .ctm_status ファイルも含まれています.) を入手することができます. これにより, これまで CVSup を使って cvs-all 全部を入手していたユーザも CTM のベースデルタを使って 最初からリポジトリを構築し直すことなく CVSup から CTM へと移行すること が可能です. この機能は, リリースタグを cvs として cvs-all ディストリビューションを入手する時のみ 利用できるものですので注意してください. 他のディストリビューションやリリースタグを 指定した場合でも指定したファイルを入手することは可能ですが, これらのファイルを CTM で更新することはできません. また, CTM の現在のバージョンではタイムスタンプを保存しないため, 以 下のサイトのファイルのタイムスタンプは 他のミラーとは異なる物となってい ますので注意が必要です. 利用するサイトを以下のサイトと他のサイトの間で 変更することはお勧めできません. ファイルの転送は問題なくできますが, 少々非能率的です. ドイツ ctm.FreeBSD.org (保守担当 blank@fox.uni-trier.de) AFS サイト FreeBSD の AFS サーバは以下のサイトで稼働しています: スウェーデン ファイルは以下の場所にあります: /afs/stacken.kth.se/ftp/pub/FreeBSD/ stacken.kth.se # Stacken Computer Club, KTH, Sweden 130.237.234.43 #hot.stacken.kth.se 130.237.237.230 #fishburger.stacken.kth.se 130.237.234.3 #milko.stacken.kth.se (保守担当 ftp@stacken.kth.se)
diff --git a/ja_JP.eucJP/books/handbook/staff/chapter.sgml b/ja_JP.eucJP/books/handbook/staff/chapter.sgml index c8418caa60..b410650483 100644 --- a/ja_JP.eucJP/books/handbook/staff/chapter.sgml +++ b/ja_JP.eucJP/books/handbook/staff/chapter.sgml @@ -1,1191 +1,1195 @@ FreeBSDプロジェクトスタッフ 訳: &a.hanai;, 1996 年 8 月 28 日. FreeBSDプロジェクトは, 以下の人々によって管理運営されています. FreeBSD コアチーム FreeBSD コアチームは, プロジェクトの 運用委員会 を形成し, FreeBSD プロジェクトの全般的な目的や方針の決定を行います. さらに, FreeBSDプロジェクトの 特定の分野の 運用も行っています. (姓でアルファベット順): &a.asami; &a.jmb; &a.ache; &a.bde; &a.gibbs; &a.dg; &a.jkh; &a.phk; &a.rich; &a.gpalmer; &a.dfr; &a.sos; &a.peter; &a.wollman; &a.joerg; FreeBSD の開発者たち (CVSの)commitする権利を持っていて, FreeBSD のソースツリーについて 作業をおこなっている人々がいます. すべてのコアチームのメンバはま た 開発者でもあります. &a.akiyama; &a.jmas; &a.will; &a.ugen; &a.toshi; &a.babkin; &a.dbaker; &a.jhb; &a.mbarkah; &a.stb; &a.pb; &a.abial; &a.jb; &a.nbm; &a.torstenb; &a.wilko; &a.jake; &a.dburr; &a.adrian; &a.charnier; &a.luoqi; &a.ejc; &a.kjc; &a.cjh; &a.archie; &a.chris; &a.alc; &a.cracauer; &a.dec; &a.adam; &a.bsd; &a.jwd; &a.dillon; &a.mdodd; &a.dufault; &a.uhclem; &a.tegge; &a.deischen; &a.eivind; &a.julian; &a.rse; &a.ru; &a.se; &a.jasone; &a.sef; &a.jedgar; &a.green; &a.fenner; &a.jfieber; &a.jfitz; &a.scrappy; &a.lars; &a.dirk; &a.shige; &a.billf; &a.gallatin; &a.patrick; &a.tg; &a.brandon; &a.gioria; &a.graichen; &a.cg; &a.rgrimes; &a.jmg; &a.hanai; &a.roger; &a.mharo; &a.dannyboy; &a.thepish; &a.jhay; &a.sheldonh; &a.helbig; &a.ghelmer; &a.erich; &a.nhibma; &a.flathill; &a.pho; &a.horikawa; &a.hosokawa; &a.hsu; &a.foxfair; &a.tom; &a.mph; &a.imura; &a.shin; &a.itojun; &a.iwasaki; &a.mjacob; &a.gj; &a.nsj; &a.joe; &a.cokane; &a.kato; &a.kris; &a.andreas; &a.motoyuki; &a.jkoshy; &a.kuriyama; &a.alex; &a.reg; &a.grog; &a.jlemon; &a.truckman; &a.lile; &a.kevlo; &a.imp; &a.ade; &a.jmacd; &a.smace; &a.gehenna; &a.dwmalone; &a.mckay; &a.mckusick; &a.ken; &a.hm; &a.sanpei; &a.non; &a.jim; &a.marcel; &a.dan; &a.amurai; &a.markm; &a.knu; &a.nakai; &a.max; &a.newton; &a.rnordier; &a.davidn; &a.obrien; &a.danny; &a.ljo; + + + &a.onoe; + &a.marko; &a.fsmp; &a.smpatel; &a.cp; &a.wpaul; &a.alfred; &a.wes; &a.cpiazza; &a.jdp; &a.bp; &a.steve; &a.mpp; &a.jraynard; &a.darrenr; &a.csgr; &a.martin; &a.paul; &a.roberto; &a.chuckr; &a.jesusr; &a.guido; &a.groudier; &a.dima; &a.asmodai; &a.ps; &a.sada; &a.hrs; &a.wsanchez; &a.nsayer; &a.wosch; &a.dick; &a.jseger; &a.gshapiro; &a.simokawa; &a.vanilla; &a.shafeeq; &a.msmith; &a.ben; &a.des; &a.sobomax; &a.dcs; &a.brian; &a.mks; &a.stark; &a.sumikawa; &a.murray; &a.gsutter; &a.unfurl; &a.nyan; &a.tanimura; &a.taoka; &a.mtaylor; &a.dt; &a.cwt; &a.pst; &a.ume; &a.hoek; &a.nectar; &a.jayanth; &a.swallace; &a.takawata; &a.rwatson; &a.assar; &a.dwhite; &a.nate; &a.kbyanc; &a.yokota; &a.andy; &a.phantom; &a.jmz; FreeBSD ドキュメンテーションプロジェクト FreeBSD ドキュメンテーションプロジェクトは複数のサービスを提供 しています. それぞれのサービスは, 以下の担当者とその 副担当者によって運用されています. ドキュメンテーションプロジェクト担当 &a.nik; Web 管理責任者 &a.wosch; ハンドブック編集担当 &a.jim; FAQ 編集担当 &a.faq; ニュースフラッシュ編集担当 &a.jim; In the Press 編集担当 &a.jkoshy; FreeBSD Really-Quick NewsLetter編集担当 Chris Coleman chrisc@vmunix.com ギャラリーページ担当 &a.phantom; 商用ベンダーページ担当 &a.phantom; WEB 更新担当 &a.www; ]]> ユーザグループ担当 &a.grog; FreeBSD プロジェクトおよびタスクリスト担当 &a.asmodai; FreeBSD Java プロジェクト &a.patrick; LinuxDoc から DocBook への移行 &a.nik; 担当者 最高技術責任者 &a.dg; ドキュメンテーションプロジェクト担当 &a.nik; 起動ブロック &a.rnordier;, &a.jhb; ローダ &a.dcs; 国際化 &a.ache; ネットワーク &a.wollman; ポストマスタ &a.jmb; リリースコーディネータ &a.jkh; 広報および渉外担当 &a.jkh; セキュリティ担当 &a.imp; CVS ツリー管理者 責任者: &a.peter; 副責任者: &a.jdp; 国際版 (暗号) 担当: &a.markm; ports コレクション担当 &a.asami; XFree86 Project, Inc. との渉外担当 &a.rich; Usenet サポート &a.joerg; GNATS 管理者 &a.steve; Web 管理者 &a.wosch; diff --git a/ja_JP.eucJP/share/sgml/authors.ent b/ja_JP.eucJP/share/sgml/authors.ent index 369e1af5e8..07bd7e7525 100644 --- a/ja_JP.eucJP/share/sgml/authors.ent +++ b/ja_JP.eucJP/share/sgml/authors.ent @@ -1,525 +1,527 @@ abial@FreeBSD.org"> ache@FreeBSD.org"> adam@FreeBSD.org"> ade@FreeBSD.org"> adrian@FreeBSD.org"> akiyama@FreeBSD.org"> alc@FreeBSD.org"> alex@FreeBSD.org"> alfred@FreeBSD.org"> amurai@FreeBSD.org"> andreas@FreeBSD.org"> andy@FreeBSD.org"> archie@FreeBSD.org"> asami@FreeBSD.org"> asmodai@FreeBSD.org"> assar@FreeBSD.org"> ats@FreeBSD.org"> awebster@pubnix.net"> babkin@FreeBSD.org"> bde@FreeBSD.org"> ben@FreeBSD.org"> billf@FreeBSD.org"> bp@FreeBSD.org"> brandon@FreeBSD.org"> brian@FreeBSD.org"> bsd@FreeBSD.org"> cawimm@FreeBSD.org"> cg@FreeBSD.org"> charnier@FreeBSD.org"> chris@FreeBSD.org"> chuckr@glue.umd.edu"> chuckr@FreeBSD.org"> cjh@FreeBSD.org"> cp@FreeBSD.org"> cokane@FreeBSD.org"> cpiazza@FreeBSD.org"> cracauer@FreeBSD.org"> csgr@FreeBSD.org"> cwt@FreeBSD.org"> dan@FreeBSD.org"> danny@FreeBSD.org"> dannyboy@FreeBSD.org"> darrenr@FreeBSD.org"> davidn@blaze.net.au"> dbaker@FreeBSD.org"> dburr@FreeBSD.org"> dcs@FreeBSD.org"> dec@FreeBSD.org"> deischen@FreeBSD.org"> des@FreeBSD.org"> dfr@FreeBSD.org"> dg@FreeBSD.org"> dick@FreeBSD.org"> dillon@FreeBSD.org"> dima@FreeBSD.org"> dirk@FreeBSD.org"> Dirk.vanGulik@jrc.it"> dt@FreeBSD.org"> dufault@FreeBSD.org"> dwhite@FreeBSD.org"> dwmalone@FreeBSD.org"> dyson@FreeBSD.org"> eivind@FreeBSD.org"> ejc@FreeBSD.org"> erich@FreeBSD.org"> faq@FreeBSD.org"> fenner@FreeBSD.org"> flathill@FreeBSD.org"> foxfair@FreeBSD.org"> fsmp@FreeBSD.org"> gallatin@FreeBSD.org"> gclarkii@FreeBSD.org"> gehenna@FreeBSD.org"> gena@NetVision.net.il"> ghelmer@cs.iastate.edu"> gibbs@FreeBSD.org"> gioria@FreeBSD.org"> gj@FreeBSD.org"> gpalmer@FreeBSD.org"> graichen@FreeBSD.org"> green@FreeBSD.org"> grog@FreeBSD.org"> groudier@club-internet.fr"> gryphon@healer.com"> gshapiro@FreeBSD.org"> gsutter@FreeBSD.org"> guido@FreeBSD.org"> hanai@FreeBSD.org"> handy@sxt4.physics.montana.edu"> hrs@FreeBSD.org"> roger@freebsd.org"> helbig@FreeBSD.org"> hm@FreeBSD.org"> hoek@FreeBSD.org"> horikawa@FreeBSD.org"> hosokawa@FreeBSD.org"> hsu@FreeBSD.org"> imp@FreeBSD.org"> imura@FreeBSD.org"> itojun@itojun.org"> iwasaki@FreeBSD.org"> jake@FreeBSD.org"> jasone@FreeBSD.org"> jayanth@FreeBSD.org"> jb@cimlogic.com.au"> jdp@FreeBSD.org"> jedgar@FreeBSD.org"> jehamby@lightside.com"> jesusr@FreeBSD.org"> jfieber@FreeBSD.org"> jfitz@FreeBSD.org"> jgreco@FreeBSD.org"> jhay@FreeBSD.org"> jhb@FreeBSD.org"> jhs@FreeBSD.org"> jim@FreeBSD.org"> jkh@FreeBSD.org"> jkoshy@FreeBSD.org"> jlemon@FreeBSD.org"> john@starfire.MN.ORG"> jlrobin@FreeBSD.org"> jmacd@FreeBSD.org"> jmas@FreeBSD.org"> jmb@FreeBSD.org"> jmg@FreeBSD.org"> jmz@FreeBSD.org"> joe@FreeBSD.org"> joerg@FreeBSD.org"> john@FreeBSD.org"> jraynard@FreeBSD.org"> jseger@FreeBSD.org"> julian@FreeBSD.org"> jwd@FreeBSD.org"> jvh@FreeBSD.org"> karl@FreeBSD.org"> kato@FreeBSD.org"> kbyanc@FreeBSD.org"> kelly@ad1440.net"> ken@FreeBSD.org"> kevlo@FreeBSD.org"> kjc@FreeBSD.org"> knu@FreeBSD.org"> kris@FreeBSD.org"> kuriyama@FreeBSD.org"> lars@FreeBSD.org"> lile@FreeBSD.org"> ljo@FreeBSD.org"> luoqi@FreeBSD.org"> marcel@FreeBSD.org"> markm@FreeBSD.org"> marko@FreeBSD.org"> martin@FreeBSD.org"> max@FreeBSD.org"> mark@vmunix.com"> mbarkah@FreeBSD.org"> mckay@FreeBSD.org"> mckusick@FreeBSD.org"> md@bsc.no"> winter@jurai.net"> mharo@FreeBSD.org"> mjacob@FreeBSD.org"> mks@FreeBSD.org"> motoyuki@FreeBSD.org"> mph@FreeBSD.org"> mpp@FreeBSD.org"> msmith@FreeBSD.org"> mtaylor@FreeBSD.org"> murray@FreeBSD.org"> nakai@FreeBSD.org"> nate@FreeBSD.org"> nbm@FreeBSD.org"> nectar@FreeBSD.org"> newton@FreeBSD.org"> n_hibma@FreeBSD.org"> nik@FreeBSD.org"> non@FreeBSD.org"> nsayer@FreeBSD.org"> nsj@FreeBSD.org"> nyan@FreeBSD.org"> obrien@FreeBSD.org"> olah@FreeBSD.org"> +onoe@FreeBSD.org"> + opsys@open-systems.net"> patrick@FreeBSD.org"> paul@FreeBSD.org"> pb@fasterix.freenix.org"> pds@FreeBSD.org"> peter@FreeBSD.org"> phantom@FreeBSD.org"> phk@FreeBSD.org"> pho@FreeBSD.org"> piero@strider.inet.it"> pjchilds@imforei.apana.org.au"> proven@FreeBSD.org"> ps@FreeBSD.org"> pst@FreeBSD.org"> reg@FreeBSD.org"> rgrimes@FreeBSD.org"> rhuff@cybercom.net"> ricardag@ag.com.br"> rich@FreeBSD.org"> rnordier@FreeBSD.org"> roberto@FreeBSD.org"> rse@FreeBSD.org"> ru@FreeBSD.org"> rwatson@FreeBSD.org"> sada@FreeBSD.org"> sanpei@FreeBSD.org"> scrappy@FreeBSD.org"> se@FreeBSD.org"> sef@FreeBSD.org"> shafeeq@FreeBSD.org"> sheldonh@FreeBSD.org"> shige@FreeBSD.org"> shin@FreeBSD.org"> simokawa@FreeBSD.org"> smace@FreeBSD.org"> smpatel@FreeBSD.org"> sobomax@FreeBSD.org"> sos@FreeBSD.org"> stark@FreeBSD.org"> stb@FreeBSD.org"> steve@FreeBSD.org"> sumikawa@FreeBSD.org"> swallace@FreeBSD.org"> tanimura@FreeBSD.org"> taoka@FreeBSD.org"> takawata@FreeBSD.org"> tedm@FreeBSD.org"> tegge@FreeBSD.org"> tg@FreeBSD.org"> thepish@FreeBSD.org"> tom@FreeBSD.org"> torstenb@FreeBSD.org"> toshi@FreeBSD.org"> truckman@FreeBSD.org"> ugen@FreeBSD.org"> uhclem@FreeBSD.org"> ulf@FreeBSD.org"> ume@FreeBSD.org"> unfurl@FreeBSD.org"> vanilla@FreeBSD.org"> wes@FreeBSD.org"> whiteside@acm.org"> wilko@FreeBSD.org"> will@FreeBSD.org"> wlloyd@mpd.ca"> wollman@FreeBSD.org"> wosch@FreeBSD.org"> wpaul@FreeBSD.org"> wsanchez@FreeBSD.org"> yokota@FreeBSD.org">