Merge the following from the English version:

1.179 -> 1.187	books/handbook/ports/chapter.sgml

Submitted by:	Ryusuke Suzuki <ryusuke at nucl dot sci dot hokudai dot ac dot jp>
Reference:	[doc-jp-work 1201]
This commit is contained in:
Hideyuki KURASHINA 2005-07-23 16:12:54 +00:00
parent 6e061960f9
commit 61664e5558
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=25223

View file

@ -2,14 +2,14 @@
The FreeBSD Documentation Project
The FreeBSD Japanese Documentation Project
Original revision: 1.179
Original revision: 1.187
$FreeBSD$
-->
<chapter id="ports">
<title>アプリケーションのインストール - packages と ports</title>
<sect1>
<sect1 id="ports-synopsis">
<title>この章では</title>
<indexterm><primary>ports</primary></indexterm>
@ -38,7 +38,7 @@
</itemizedlist>
</sect1>
<sect1>
<sect1 id="ports-overview">
<title>ソフトウェアのインストール</title>
<para>すでに Unix システムを使ったことのある人ならば、
@ -58,9 +58,9 @@
</step>
<step>
<para>ドキュメントを探しだし
(おそらく <filename>README</filename> ファイル、あるいは
<filename>doc/</filename> サブディレクト中のファイル)、
<para>ドキュメント (<filename>INSTALL</filename> または
<filename>README</filename> ファイル、あるいは
<filename>doc/</filename> サブディレクト中のファイル) を探しだし
ソフトウェアのインストール方法を調べる。</para>
</step>
@ -107,7 +107,7 @@
<para>プログラムをコンパイルする時のことを思い出して下さい。
通常、とてもたくさんの手順
(展開、パッチ作業、コンパイル、インストール)
(ダウンロード、展開、パッチ作業、コンパイル、インストール)
を踏まなくてはなりません。
port を構成するファイルは、
これらすべての作業をあなたの代わりに行うために必要な情報を含んでいます。
@ -128,7 +128,7 @@
アプリケーションを追加するために
<command>pkg_add</command> コマンドまたは ports システムを用いると、
インストールされていないライブラリが検出され、
先に依存するライブラリがインストールされます。</para>
先に依存するライブラリが自動的にインストールされます。</para>
<para>2 つの技術が非常に類似していて、
なぜ FreeBSD がわざわざ両者を採用しているのか不思議に思うでしょう。
@ -216,14 +216,14 @@
</itemizedlist>
<para>ports の更新状況を把握するために、
&a.ports; を購読するとよいでしょう。</para>
&a.ports; や &a.ports-bugs; を購読するとよいでしょう。</para>
<para>この章では、packages と ports を用いた FreeBSD 上での
サードパーティ製ソフトウェアの
インストール方法や管理方法について説明します。</para>
</sect1>
<sect1>
<sect1 id="ports-finding-applications">
<title>アプリケーションの探し方</title>
<para>どんなアプリケーションをインストールするにしても、
@ -239,7 +239,7 @@
利用可能なすべてのアプリケーションの最新の一覧を、検索できる形で
<ulink url="../../../../ports/index.html">http://www.FreeBSD.org/ports/</ulink>
において公開しています。
アプリケーションの名前はカテゴリに分類されています。
ports はカテゴリに分類されています。
アプリケーションは、(名前を知っているならば) 名前で検索でき、
あるカテゴリで利用可能な
アプリケーションをすべて表示させることもできます。</para>
@ -249,22 +249,21 @@
<listitem>
<para>Dan Langille は
<ulink url="http://www.FreshPorts.org/">http://www.FreshPorts.org/</ulink>
で FreshPorts を公開しています。
<ulink url="http://www.FreshPorts.org/"></ulink>
で FreshPorts を公開しています。
FreshPorts は ports ツリー中のアプリケーションの変更を追跡します。
一つまたはそれ以上の ports を <quote>監視</quote> することができ、
変更があるとメールで更新情報を送ってくれます。</para>
変更があるとメールで更新情報を送ってくれます。</para>
</listitem>
<indexterm><primary>FreshMeat</primary></indexterm>
<listitem>
<para>ご希望のアプリケーションの名前がわからなければ、
FreshMeat
(<ulink url="http://www.freshmeat.net/">http://www.freshmeat.net/</ulink>)
FreshMeat (<ulink url="http://www.freshmeat.net/"></ulink>)
のようなサイトでアプリケーションを探して下さい。
その後、そのアプリケーションが ports で利用可能かどうかを
FreeBSD サイトで調べて下さい。</para>
FreeBSD サイトで調べて下さい。</para>
</listitem>
</itemizedlist>
</sect1>
@ -298,7 +297,7 @@
インストールするためのユーティリティです。</para>
<example>
<title>package をダウンロードしてローカルからインストールする</title>
<title>手動で package をダウンロードしてローカルからインストールする</title>
<screen>&prompt.root; <userinput>ftp -a <replaceable>ftp2.FreeBSD.org</replaceable></userinput>
Connected to ftp2.FreeBSD.org.
@ -325,7 +324,7 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
&prompt.root; <userinput>pkg_add <replaceable>lsof-4.56.4.tgz</replaceable></userinput></screen>
</example>
<para>(FreeBSD CD-ROM セットのような)
<para>(FreeBSD CD-ROM セットのような)
ローカルな packages がない場合は、
&man.pkg.add.1; に <option>-r</option> オプションをつける方が楽でしょう。
このユーティリティは、このオプションを指定して実行すると
@ -356,8 +355,7 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
<para>package は <filename>.tgz</filename>
という拡張子を持つファイルとして配布されており、
<ulink
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/">
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/</ulink>
url="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/"></ulink>
や FreeBSD CD-ROM にあります。
FreeBSD 4-CD セット (または PowerPak など) の CD はすべて、
<filename>/packages</filename> ディレクトリに packages が
@ -368,28 +366,12 @@ local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
があります。
</para>
<para>package システムのディレクトリ構造は ports のそれと同一です。
<para>package システムのディレクトリ構造は ports のレイアウトと同一です。
両者が組み合わさって package/port システムが構成されます。
</para>
</sect2>
<sect2>
<title>package の削除</title>
<indexterm>
<primary><command>pkg_delete</command></primary>
</indexterm>
<indexterm>
<primary>packages</primary>
<secondary>削除</secondary>
</indexterm>
<para>インストールされている package を削除するには、
&man.pkg.delete.1; ユーティリティを使ってください。
</para>
<screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen>
</sect2>
<sect2>
<title>packages の管理</title>
@ -461,6 +443,22 @@ docbook =
</informaltable>
</sect2>
<sect2>
<title>package の削除</title>
<indexterm>
<primary><command>pkg_delete</command></primary>
</indexterm>
<indexterm>
<primary>packages</primary>
<secondary>削除</secondary>
</indexterm>
<para>インストールされている package を削除するには、
&man.pkg.delete.1; ユーティリティを使ってください。
</para>
<screen>&prompt.root; <userinput>pkg_delete <replaceable>xchat-1.7.1</replaceable></userinput></screen>
</sect2>
<sect2>
<title>その他</title>
<para>package に関するすべての情報は
@ -533,7 +531,12 @@ docbook =
</step>
<step>
<para>メニューに従って
<para><guimenuitem>Exit</guimenuitem> までスクロールアップして、<keycap>Enter</keycap>
を押してください。</para>
</step>
<step>
<para><keycap>X</keycap> を押して、
<application>sysinstall</application> を終了してください。</para>
</step>
</procedure>
@ -591,9 +594,11 @@ docbook =
</step>
<step>
<para>この手順を時間をおいて繰り返し実行すると、
<para>このコマンドを時間をおいて実行すると、
最新の変更点がダウンロードされて、あなたの手元の
Ports Collection に加えられます。</para>
Ports Collection に加えられます。
Ports Collection 全体が再度ダウンロードされることはありません。
</para>
</step>
</procedure>
</sect2>
@ -647,11 +652,6 @@ docbook =
その他のファイルが入る場合もあります。</para>
</listitem>
<listitem>
<para><filename>pkg-comment</filename> ファイル。
これにはプログラムの一行説明文が含まれています。</para>
</listitem>
<listitem>
<para><filename>pkg-descr</filename> ファイル。
これにはプログラムの、複数行にわたる詳しい説明文が含まれます。</para>
@ -732,10 +732,10 @@ B-deps:
R-deps: </screen>
<para>出力のうち特に注意して見なければならないのは
<quote>Path</quote> という行です。
この行は xchat がどこにあるかを示しています。
<quote>Path:</quote> という行です。
この行は port がどこにあるかを示しています。
出力される他の情報は port
をインストールする際には直接必要となるものではありませんので、
をインストールする際には必要となるものではありませんので、
ここでは触れないでおきます。</para>
<para>もっと詳細な検索をするには、
@ -754,7 +754,7 @@ R-deps: </screen>
<note>
<para>ports をインストールするには、
<username>root</username> ユーザにならなければなりません。</para>
<username>root</username> としてログインする必要があります。</para>
</note>
<para>インストールしたい port が見つかったら、
@ -778,15 +778,15 @@ R-deps: </screen>
<secondary>CD-ROM からのインストール</secondary>
</indexterm>
<para>FreeBSD プロジェクトの公式 CDROM イメージには
<para>FreeBSD プロジェクトの公式 CD-ROM イメージには
もう distfiles は収録されていません。
あらかじめコンパイルされた packages が CDROM の大部分を占めています。
一方、FreeBSD PowerPak のような CDROM 製品は distfiles を収録しています。
あらかじめコンパイルされた packages が CD-ROM の大部分を占めています。
一方、FreeBSD PowerPak のような CD-ROM 製品は distfiles を収録しています。
<ulink url="http://www.freebsdmall.com/">FreeBSD Mall</ulink>
といったベンダからこれらの製品を注文できます。
このセクションではこのような FreeBSD の CDROM セットを持っていることを前提としています。</para>
このセクションではこのような FreeBSD の CD-ROM セットを持っていることを前提としています。</para>
<para>FreeBSD CDROM をドライブに入れ、
<para>FreeBSD CD-ROM をドライブに入れ、
<filename>/cdrom</filename> にマウントしてください
(ほかのマウントポイントを指定すると、インストールに失敗します)。
まず、インストールしたい port のディレクトリに移動してください。
@ -796,9 +796,8 @@ R-deps: </screen>
<para><filename>lsof</filename> ディレクトリに移動すると、
port スケルトンがあるのが確認できると思います。
次に行なうのは、port のコンパイル
(構築、ビルド (build) とも呼ばれます)
です。
次に行なうのは、port のコンパイルまたは
<quote>ビルド (build)</quote> です。
これは、プロンプトから単に
<command>make</command> と入力するだけで行なえます。
そうすると、次のような出力が現われるはずです。</para>
@ -871,12 +870,12 @@ R-deps: </screen>
</note>
<note>
<para>port には CDROM
<para>port には CD-ROM
への収録を許可しないライセンス条項を持つものがあることに
注意してください。
これにはダウンロード前に登録を必要としたり、
再配布が禁止されているなどという理由があります。
CDROM に含まれていない port をインストールしたい場合には、
CD-ROM に含まれていない port をインストールしたい場合には、
ネットワークに接続する必要があります
(<link linkend="ports-inet">次のセクション</link>をご覧ください)。</para>
</note>
@ -888,12 +887,13 @@ R-deps: </screen>
<para>前セクションと同じように、このセクションでは、
インターネットへの接続が可能であることを前提としています。
もしインターネット接続が不可能な場合は、
<link linkend="ports-cd">CDROM
からのインストール</link>が必要になるでしょう。</para>
<link linkend="ports-cd">CD-ROM からのインストール</link>
や、distfile を手動で <filename>/usr/ports/distfiles</filename>
に置く作業が必要になるでしょう。</para>
<para>インターネット経由で port をインストールする方法は、
CDROM からインストールする場合と完全に同じです。
唯一異なる部分は distfile を CDROM からではなく、
CD-ROM からインストールする場合と完全に同じです。
唯一異なる部分は distfile を CD-ROM からではなく、
インターネット経由でダウンロードするということです。</para>
<para>次のように、必要な手順は同じです。</para>
@ -988,6 +988,68 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
のセクション</link> で説明されているように
&man.pkg.delete.1; を使ってください。</para>
</sect2>
<sect2 id="ports-disk-space">
<title>ports とディスク容量</title>
<indexterm>
<primary>ports</primary>
<secondary>ディスク容量</secondary>
</indexterm>
<para>Ports Collection を使い続けると、
非常に膨大なディスク容量が消費されます。
そのため、作業用ディレクトリを
<command>make <makevar>clean</makevar></command>
コマンドで削除できることを知っておくと良いでしょう。
このコマンドは、ビルドやインストールされた
port の <filename>work</filename> ディレクトリを削除します。
また、tar ファイルを <filename>distfiles</filename>
ディレクトリから削除してしまっても大丈夫でしょうし、
インストールされた ports も必要なくなれば削除してもよいでしょう。
</para>
<para><filename>refuse</filename> ファイルを使って
port のカテゴリを制限することもできます。
<application>CVSup</application> は、
このファイルにエントリされたカテゴリに属するファイルを更新しません。
</para>
</sect2>
<sect2 id="ports-upgrading">
<title>ports のアップグレード</title>
<indexterm>
<primary>ports</primary>
<secondary>アップグレード</secondary>
</indexterm>
<para>ports を最新の状態に維持し続けるのはとても大変です。
たとえば、port をアップグレードする作業は次のようになります。
まず ports のディレクトリへ移動し、port をビルドします。
次に、古い port を削除し、新しい port をインストールします。
最後にビルド後のクリーンアップを行います。
5 つの ports のアップグレードを考えただけでも大変ですよね?
このようにシステム管理者にとってアプリケーションの管理は大きな悩みの種ですが、
この問題を解決してくれるユーティリティがあります。
たとえば <filename role="port">sysutils/portupgrade</filename>
は、あなたの代わりにこれらの作業をすべて行ってくれます!
通常の port をインストールするように
<command>make <makevar>install clean</makevar></command>
コマンドでインストールしてください。</para>
<para>まず、<command>pkgdb -F</command> コマンドを使い、
データベースを作成します。
このコマンドはインストールされている ports を調べ、
<filename>/var/db/pkg</filename>
ディレクトリにデータベースファイルを作成します。
そして <command>portupgrade -a</command> を実行すると、
このデータベースファイルと
ports <filename>INDEX</filename> ファイルが調べられ、
更新の必要がある ports
のダウンロード、ビルド、バックアップ、インストール、そしてクリーンアップが行われます。
このようなユーティリティは他にも <filename>ports/sysutils</filename>
ディレクトリにあるので、目的のものを探してください。</para>
</sect2>
</sect1>
<sect1 id="ports-nextsteps">
@ -1006,8 +1068,7 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<itemizedlist>
<listitem>
<para>どのようなファイルがインストールされているか、
そしてそれらがどこにインストールされているかを知りたいのであれば、
<para>どのようなファイルがどこにインストールされているのかを知りたければ、
&man.pkg.info.1; を使ってください。
たとえば、FooPackage の 1.0.0 バージョンをインストールしたのであれば、
以下を実行してください。</para>
@ -1047,7 +1108,7 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<screen>&prompt.root; <userinput>pkg_info <replaceable>foopackage-1.0.0</replaceable></userinput></screen>
<para>通常、ウェブサイトの URL は
<para>ウェブサイトが存在すると、 URL が
<literal>WWW:</literal> を含む行に表示されます。</para>
</listitem>
</itemizedlist>
@ -1076,8 +1137,8 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<para>なるほど。
あなたはきっと、
コンピュータの背面についているシリアルポートのことだと思ってしまったのでしょう。
あるバージョンの Unix から、
別のバージョンの Unix へとプログラムを移植することを
あるオペレーティングシステムから、
別のオペレーティングシステムへとプログラムを移植することを
<quote>porting</quote> というのですが、
ここでわたしたちは <quote>porting</quote>
の結果という意味で <quote>port</quote> を使っています。</para>
@ -1198,7 +1259,7 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<para>ports はダウンロードした tarball を
<filename>/usr/ports/distfiles</filename>
に置こうとしますが、システム管理者の多くはこのディレクトリに
リモートのファイルサーバやローカルの読み出し専用の CDROM
リモートのファイルサーバやローカルの読み出し専用の CD-ROM
に対するシンボリックリンクを作成しています。
このような場合には、以下のようにして distfiles
を格納するディレクトリを変更してください。</para>
@ -1264,7 +1325,7 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<qandaentry>
<question>
<para>わたしは FreeBSD の CDROM を持っていませんが、
<para>わたしは FreeBSD の CD-ROM を持っていませんが、
すべての tarball を システムに置いておきたいのです。
そうすれば ports
をインストール するたびに毎回ダウンロードが終わるのを待たなくてすむでしょう。
@ -1415,7 +1476,7 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
<qandaentry>
<question>
<para><literal>foo</literal> ports
をインストールしたいのですが、それのコンパイルは
のインストールを行うと、それのコンパイルは
すぐに停止して、<literal>bar</literal> ports
のコンパイルが始まってしまいます。一体どうして?</para>
</question>
@ -1429,7 +1490,9 @@ Receiving lsof_4.57D.freebsd.tar.gz (439860 bytes): 100%
がその画像処理に必要なライブラリを持っている場合などです。
もしくは <literal>bar</literal> が
<literal>foo</literal>
をコンパイルするのに必要なツールなのかもしれません。</para>
をコンパイルするのに必要なツールなのかもしれません。
<literal>bar</literal> がインストールされると、
自動的に <literal>foo</literal> のコンパイルが再開されます。</para>
</answer>
</qandaentry>