From fd09b8c06b6e10f4d364687e1b81fbd8a20f9438 Mon Sep 17 00:00:00 2001 From: Ryusuke SUZUKI Date: Tue, 20 May 2014 09:43:33 +0000 Subject: [PATCH] - Merge the following from the English version: r44673 -> r44674 head/ja_JP.eucJP/books/handbook/cutting-edge/chapter.xml --- .../books/handbook/cutting-edge/chapter.xml | 445 +++++++++--------- 1 file changed, 226 insertions(+), 219 deletions(-) diff --git a/ja_JP.eucJP/books/handbook/cutting-edge/chapter.xml b/ja_JP.eucJP/books/handbook/cutting-edge/chapter.xml index 01a5152883..b7afbdb8fb 100644 --- a/ja_JP.eucJP/books/handbook/cutting-edge/chapter.xml +++ b/ja_JP.eucJP/books/handbook/cutting-edge/chapter.xml @@ -3,7 +3,7 @@ The FreeBSD Documentation Project The FreeBSD Japanese Documentation Project - Original revision: r44673 + Original revision: r44674 $FreeBSD$ --> &prompt.root; cd /cdrom/X.Y-RELEASE/kernels &prompt.root; ./install.sh GENERIC - ここで X.Y-RELEASE + ここで X.Y-RELEASE を実際のリリース番号に置き換えてください。 GENERIC は、デフォルトで /boot/GENERIC にインストールされます。 @@ -725,8 +726,8 @@ before running "/usr/sbin/freebsd-update install" ドキュメントは、&os; オペレーティングシステムの必須要素です。 - &os; ドキュメントの最新バージョンは、&os; ウェブサイト - (http://www.freebsd.org/doc/) + &os; ドキュメントの最新バージョンは、&os; ウェブサイト (http://www.freebsd.org/doc/) から入手できますが、 &os; ウェブサイト、ハンドブック、FAQ および文書の最新版をローカルに用意しておくと便利です。 @@ -736,8 +737,9 @@ before running "/usr/sbin/freebsd-update install" ドキュメントを編集したり、 ドキュメントの誤りを報告する方法については、 - 新しい貢献者のための &os; ドキュメンテーションプロジェクト入門 - (http://www.freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/) をご覧ください。 + 新しい貢献者のための &os; ドキュメンテーションプロジェクト入門 (http://www.freebsd.org/doc/en_US.ISO8859-1/books/fdp-primer/) + をご覧ください。 ソースから &os; ドキュメントをインストールする @@ -894,113 +896,115 @@ before running "/usr/sbin/freebsd-update install" xlink:href="http://www.freshports.org/docs/">http://www.freshports.org/docs/) にまとめられています。 - ドキュメンテーション ports の構成は以下の通りです。 + ドキュメンテーション ports の構成は以下の通りです。 - - - misc/freebsd-doc-en package または portは、 - すべての英語文書をインストールします。 - + + + misc/freebsd-doc-en package または portは、 + すべての英語文書をインストールします。 + - - misc/freebsd-doc-all メタ package - もしくは port は、 - すべての利用可能な言語のすべてのドキュメントを構築します。 - + + misc/freebsd-doc-all メタ package + もしくは port は、 + すべての利用可能な言語のすべてのドキュメントを構築します。 + - - 各言語のために package または port - が用意されています。たとえば、 - misc/freebsd-doc-hu - はハンガリー語のドキュメンテーション port です。 - - + + 各言語のために package または port + が用意されています。たとえば、 + misc/freebsd-doc-hu + はハンガリー語のドキュメンテーション port です。 + + - バイナリ package を使うと、 - インストールする言語に用意されているすべての形式の - &os; ドキュメントがインストールされます。 - たとえば、以下のコマンドを実行すると、 - ハンガリー語のドキュメントの最新 package - がインストールされます。 + バイナリ package を使うと、 + インストールする言語に用意されているすべての形式の + &os; ドキュメントがインストールされます。 + たとえば、以下のコマンドを実行すると、 + ハンガリー語のドキュメントの最新 package + がインストールされます。 - &prompt.root; pkg install hu-freebsd-doc + &prompt.root; pkg install hu-freebsd-doc - - ドキュメントの package は、対応する port 名とは異なり、 - lang-freebsd-doc - の形式で名前がつけられています。 - ここで、lang は言語コードの短縮形です。 - ハンガリー語の場合は hu、簡体字の場合には - zh_cn です。 - + + ドキュメントの package は、対応する port 名とは異なり、 + lang-freebsd-doc + の形式で名前がつけられています。 + ここで、lang は言語コードの短縮形です。 + ハンガリー語の場合は hu、簡体字の場合には + zh_cn です。 + - ドキュメントのフォーマットを指定する場合には、package ではなく - port から構築をしてください。 - たとえば、英語のドキュメントを構築してインストールするには以下のようにして下さい。 + ドキュメントのフォーマットを指定する場合には、package ではなく + port から構築をしてください。たとえば、 + 英語のドキュメントを構築してインストールするには以下のようにして下さい。 - &prompt.root; cd /usr/ports/misc/freebsd-doc-en + &prompt.root; cd /usr/ports/misc/freebsd-doc-en &prompt.root; make install clean - この port には、 - 構築およびインストールするフォーマットを設定するメニューがあります。 - デフォルトでは、http://www.FreeBSD.org - と同じ形式である分割版の HTML 形式、 - PDF が選択されています。 + この port には、 + 構築およびインストールするフォーマットを設定するメニューがあります。 + デフォルトでは、http://www.FreeBSD.org + と同じ形式である分割版の HTML 形式、 + PDF が選択されています。 - 以下のように、ドキュメンテーション ports を構築する際の - make オプションが用意されています。 + 以下のように、ドキュメンテーション ports を構築する際の + make オプションが用意されています。 - - - WITH_HTML + + + WITH_HTML - - HTML 形式を構築します。 - 各ドキュメントに対し、単一版の HTML ファイルが構築されます。 - 整形されたドキュメントは、 - article.html や - book.html - といった名前でインストールされます。 - - + + HTML 形式を構築します。 + 各ドキュメントに対し、単一版の HTML ファイルが構築されます。 + 整形されたドキュメントは、 + article.html や + book.html + といった名前でインストールされます。 + + - - WITH_PDF + + WITH_PDF - - 整形されたドキュメントは、 - article.pdf や - book.pdf - といった名前でインストールされます。 - - + + 整形されたドキュメントは、 + article.pdf や + book.pdf + といった名前でインストールされます。 + + - - DOCBASE + + DOCBASE - - ドキュメントのインストール先を設定します。 - デフォルトのインストール先は - /usr/local/share/doc/freebsd - です。 - - - + + ドキュメントのインストール先を設定します。 + デフォルトのインストール先は + /usr/local/share/doc/freebsd + です。 + + + - 以下は、上記の変数を用いてハンガリー語のドキュメントを - PDF 形式でインストールする方法です。 + 以下は、上記の変数を用いてハンガリー語のドキュメントを + PDF 形式でインストールする方法です。 - &prompt.root; cd /usr/ports/misc/freebsd-doc-hu + &prompt.root; cd /usr/ports/misc/freebsd-doc-hu &prompt.root; make -DWITH_PDF DOCBASE=share/doc/freebsd/hu install clean - に書かれている手順を使って、 - ドキュメンテーション package または port - をアップデートできます。 - たとえば、以下のコマンドを実行すると、ports-mgmt/portupgrade - から、package だけを使ってインストールされているハンガリー語のドキュメントをアップデートします。 + に書かれている手順を使って、 + ドキュメンテーション package または port + をアップデートできます。 + たとえば、以下のコマンドを実行すると、 + ports-mgmt/portupgrade + から、package + だけを使ってインストールされているハンガリー語のドキュメントをアップデートします。 - &prompt.root; portmaster -PP hu-freebsd-doc + &prompt.root; portmaster -PP hu-freebsd-doc @@ -1665,173 +1669,173 @@ Script started, output file is /var/tmp/mw.out &prompt.root; exit Script done, … - /tmp - に出力を保存してはいけません。 - このディレクトリは、次の再起動で削除されてしまう可能性があります。 - 出力の保存には、/var/tmp や - root - のホームディレクトリが適しています。 + /tmp + に出力を保存してはいけません。 + このディレクトリは、次の再起動で削除されてしまう可能性があります。 + 出力の保存には、/var/tmp や + root + のホームディレクトリが適しています。 - /usr/src にて、 - 次のように実行してください。 + /usr/src にて、 + 次のように実行してください。 - &prompt.root; cd /usr/src + &prompt.root; cd /usr/src - - make - + + make + - world を再構築するには、&man.make.1; を使用してください。 - このコマンドは、Makefile から、 - &os; を構成するプログラムの再構築方法や、 - どういう順番でそれらを構築すべきかといったような指示を読み込みます。 + world を再構築するには、&man.make.1; を使用してください。 + このコマンドは、Makefile から、 + &os; を構成するプログラムの再構築方法や、 + どういう順番でそれらを構築すべきかといったような指示を読み込みます。 - コマンドラインの一般的な書式は、次のとおりです。 + コマンドラインの一般的な書式は、次のとおりです。 - &prompt.root; make -x -DVARIABLE target + &prompt.root; make -x -DVARIABLE target - この例では、 が - &man.make.1; に渡されるオプションになります。 - どのようなオプションが利用できるかについては、&man.make.1; - を参照してください。 + この例では、 が + &man.make.1; に渡されるオプションになります。 + どのようなオプションが利用できるかについては、&man.make.1; + を参照してください。 - - は、 - Makefile に渡される変数であり、 - この変数は Makefile の動作をコントロールします。 - また、/etc/make.conf で設定される変数も - 同様です。これは変数を設定するもう一つの方法として用意されています。 - たとえば以下の通りです。 + + は、Makefile に渡される変数であり、 + この変数は Makefile の動作をコントロールします。 + また、/etc/make.conf で設定される変数も + 同様です。これは変数を設定するもう一つの方法として用意されています。 + たとえば以下の通りです。 - &prompt.root; make -DNO_PROFILE target + &prompt.root; make -DNO_PROFILE target - - は、プロファイル版のライブラリを構築しないことを指定する - もう一つの記法で、/etc/make.conf 中の + は、プロファイル版のライブラリを構築しないことを指定する + もう一つの記法で、/etc/make.conf 中の - NO_PROFILE= true # Avoid compiling profiled libraries + NO_PROFILE= true # Avoid compiling profiled libraries - の行に対応します。 + の行に対応します。 - target は、&man.make.1; に - どのように動作するのかを指示するためのものです。 - 各 Makefile には、数多くの異なる - ターゲット (target) が定義されていて、 - 指定されたターゲットによって動作が決まります。 - + target は、&man.make.1; に + どのように動作するのかを指示するためのものです。 + 各 Makefile には、数多くの異なる + ターゲット (target) が定義されていて、 + 指定されたターゲットによって動作が決まります。 - Makefile に書かれているターゲットには、 - システムの再構築に必要な段階を、 - 多くのさらに細かい段階に分割するため、 - 構築の過程で利用されるものがあります。 + Makefile に書かれているターゲットには、 + システムの再構築に必要な段階を、 + 多くのさらに細かい段階に分割するため、 + 構築の過程で利用されるものがあります。 - 大抵の場合、&man.make.1; にパラメータを指定する必要はないでしょうから、 - コマンドラインは次のようなものになります。 + 大抵の場合、&man.make.1; + にパラメータを指定する必要はないでしょうから、 + コマンドラインは次のようなものになります。 - &prompt.root; make target + &prompt.root; make target - ここで、target - は、多くのビルドオプションのどれかになります。 - 最初のターゲットはいつも buildworld - になるでしょう。 + ここで、target + は、多くのビルドオプションのどれかになります。 + 最初のターゲットはいつも buildworld + になるでしょう。 - その名前が示すように、buildworld は - /usr/obj - 以下に新しい完全なディレクトリツリーを構築し、 - installworld は、そのツリーを - 現在のマシンにインストールします。 + その名前が示すように、buildworld は + /usr/obj + 以下に新しい完全なディレクトリツリーを構築し、 + installworld は、そのツリーを + 現在のマシンにインストールします。 - 選択肢が分けられていることは、二つの理由から有用です。 - まず第一に、構築作業は - 何にも依存せず独立して行なわれ、 - 稼働中のシステムにまったく影響を与えません。 - - そのため、マルチユーザモードで稼働中のシステムでも、何一つ - 悪影響を与えずに buildworld を - 実行することができます。 - ただし、installworld は - シングルユーザモードで行なうことをおすすめします。 + 選択肢が分けられていることは、二つの理由から有用です。 + まず第一に、構築作業は + 何にも依存せず独立して行なわれ、 + 稼働中のシステムにまったく影響を与えません。 + + そのため、マルチユーザモードで稼働中のシステムでも、何一つ + 悪影響を与えずに buildworld を + 実行することができます。 + ただし、installworld は + シングルユーザモードで行なうことをおすすめします。 - 第二に、NFS マウントを利用することで、 - ネットワーク上の複数のマシンをアップグレードすることが可能な点があげられます。 - たとえば三台のマシン、 - A, - B, C - をアップグレードしたい場合には、まずマシン A - で make buildworld と - make installworld を実行します。 - それから、マシン B - とマシン C - でマシン A の - /usr/src/usr/obj を - NFS マウントし、make installworld - とすることで構築済みのシステムを各マシンにインストールできます。 + 第二に、NFS マウントを利用することで、 + ネットワーク上の複数のマシンをアップグレードすることが可能な点があげられます。 + たとえば三台のマシン、 + A, + B, C + をアップグレードしたい場合には、まずマシン A + で make buildworld と + make installworld を実行します。 + それから、マシン B + とマシン C + でマシン A の + /usr/src/usr/obj を + NFS マウントし、make installworld + とすることで構築済みのシステムを各マシンにインストールできます。 - world ターゲットも利用可能ですが、 - このターゲットの利用は推奨されていません。 + world ターゲットも利用可能ですが、 + このターゲットの利用は推奨されていません。 - そのかわり、次のコマンド + そのかわり、次のコマンド - &prompt.root; make buildworld + &prompt.root; make buildworld - を実行してください。ここで make に - をつけると、 - 同時に複数のプロセスを生成できます。 - この機能はマルチ CPU マシンで特に効果を発揮します。 - 構築過程の大部分では CPU 性能の限界より - I/O 性能の限界の方が問題となるため、シングル CPU - マシンにも効果があります。 + を実行してください。ここで make に + をつけると、 + 同時に複数のプロセスを生成できます。 + この機能はマルチ CPU マシンで特に効果を発揮します。 + 構築過程の大部分では CPU 性能の限界より + I/O 性能の限界の方が問題となるため、シングル CPU + マシンにも効果があります。 - 普通のシングル CPU マシンで以下のコマンド + 普通のシングル CPU マシンで以下のコマンド - &prompt.root; make -j4 buildworld + &prompt.root; make -j4 buildworld - を実行すると、&man.make.1; は最大 4 個までのプロセスを同時に実行します。 - メーリングリストに投稿された経験的な報告によると、 - 4 個という指定が最も良いパフォーマンスを示すようです。 + を実行すると、&man.make.1; + は最大 4 個までのプロセスを同時に実行します。 + メーリングリストに投稿された経験的な報告によると、 + 4 個という指定が最も良いパフォーマンスを示すようです。 - もし、複数の CPU を備えたマシンで SMP 設定が行なわれたカーネルを - 利用しているなら、6 から 10 の間の値を設定し、速度がどれくらい - 向上するか確認してみてください。 + もし、複数の CPU を備えたマシンで SMP + 設定が行なわれたカーネルを利用しているなら、 + 6 から 10 の間の値を設定し、 + 速度がどれくらい向上するか確認してみてください。 - - world の再構築 - 時間 - + + world の再構築 + 時間 + - 構築時間を決める要素はさまざまありますが、 - 十分新しいマシンであれば、 - トリックや近道を使わずに普通に構築した場合、&os.stable; - の構築には 1, 2 時間しかかからないでしょう。 - &os.current; の構築は、もう少し時間がかかります。 + 構築時間を決める要素はさまざまありますが、 + 十分新しいマシンであれば、 + トリックや近道を使わずに普通に構築した場合、&os.stable; + の構築には 1, 2 時間しかかからないでしょう。 + &os.current; の構築は、もう少し時間がかかります。 新しいカーネルの構築とインストール - カーネル (kernel) + カーネル (kernel) 構築、コンパイル 新しいシステムの全機能を完全に利用できるようにするには、 カーネルを再構築してください。 再構築は、ある種のメモリ構造体が変更された時には特に必須であり、 - &man.ps.1; や &man.top.1; のようなプログラムは、 - カーネルとソースコードのバージョンが一致しないと正常に動作しないでしょう。 + &man.ps.1; や &man.top.1; のようなプログラムは、 + カーネルとソースコードのバージョンが一致しないと正常に動作しないでしょう。 最も簡単で安全にカーネルの再構築を行なう方法は、 - GENERIC を使ったカーネルを構築・インストールすることです。 - GENERIC にはあなたが必要とするデバイスがすべて含まれていない - かも知れませんが、あなたのシステムをシングルユーザモードで - 起動させるのに必要なものはすべて入っています。 - これは新しいバージョンのシステムがきちんと動作するかどうか - 調べる良い方法の一つです。 + GENERIC + を使ったカーネルを構築・インストールすることです。 + GENERIC + にはあなたが必要とするデバイスがすべて含まれていないかも知れませんが、 + あなたのシステムをシングルユーザモードで + 起動させるのに必要なものはすべて入っています。 + これは新しいバージョンのシステムがきちんと動作するかどうか調べる良い方法の一つです。 GENERIC で起動して、 システムが正常に動作しているかどうかを確かめたら、 カスタムカーネルコンフィグレーションファイルを使って新しいカーネルを構築してください。 - &os; では、新しいカーネルを構築する前に build world を行うことが重要です。 - + &os; では、新しいカーネルを構築する前に build world を行うことが重要です。 既にあるコンフィグレーションファイルを使ってカスタムカーネルを構築するには、 @@ -2433,9 +2437,9 @@ Building everything.. 実際にデータがディスクに書き込まれるのは、その数秒後になります。 これによって、書き込み処理の一括化が可能になるため、 劇的なパフォーマンスの向上が期待できます。 - - + @@ -2537,7 +2541,8 @@ Building everything.. 更新されたソフトウェアを使う前にそのマシンでテストするのです。 テストマシンはかなり長い時間落ちていても だいじょうぶなマシンであったほうがいいでしょう。 - ビルドマシンでもかまいませんが、ビルドマシンである必要はありません。 + ビルドマシンでもかまいませんが、 + ビルドマシンである必要はありません。 このビルドセットのマシンはすべて /usr/obj と @@ -2562,8 +2567,8 @@ Building everything.. ビルドマシンは自分自身のカーネルから順に全部のカーネル名を KERNCONF にリストアップしてください。 各マシンのカーネルもビルドするのであれば、 - ビルドマシンは各マシンのカーネル設定ファイルを - /usr/src/sys/arch/conf + ビルドマシンは各マシンのカーネル設定ファイルを /usr/src/sys/arch/conf に持っていなければなりません。 @@ -2592,7 +2597,7 @@ Building everything.. テストマシンを再起動して通常のマルチユーザ動作に戻します。 テストマシンにあるものすべてがちゃんと動いている確信が得られたら、 - 同じ手順でビルドセットの他のマシンにも新しいソフトウェアをインストールします。 + 同じ手順でビルドセットの他のマシンにも新しいソフトウェアをインストールします。 @@ -2600,10 +2605,12 @@ Building everything.. ports ツリーにも同じアイデアが使えます。 最初に重要な点は、 - ビルドセットのすべてのマシンに同じマシンの /usr/ports をマウントすることです。 + ビルドセットのすべてのマシンに同じマシンの + /usr/ports をマウントすることです。 そして、distfiles を共有するように /etc/make.conf を適切に設定します。 - NFS マウントによってマップされる root + NFS マウントによってマップされる + root ユーザが何であれ、DISTDIR はそのユーザが書き込める共通の共有ディレクトリに設定する必要があります。 各マシンは WRKDIRPREFIX