- Merge the following from the English version:
r39727 -> r40082 head/ja_JP.eucJP/books/handbook/ports/chapter.sgml
This commit is contained in:
parent
eb65c91e01
commit
2c5c060ac0
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=40383
1 changed files with 412 additions and 2 deletions
|
@ -3,7 +3,7 @@
|
|||
The FreeBSD Documentation Project
|
||||
The FreeBSD Japanese Documentation Project
|
||||
|
||||
Original revision: r40082
|
||||
Original revision: r40153
|
||||
$FreeBSD$
|
||||
-->
|
||||
|
||||
|
@ -357,8 +357,9 @@ Port: lsof-4.87.a,7
|
|||
Path: /usr/ports/sysutils/lsof
|
||||
Info: Lists information about open files (similar to fstat(1))</screen>
|
||||
|
||||
|
||||
<para>もっと詳しく検索するには、
|
||||
<command>make <maketarget>search</maketarget>
|
||||
<command>make <maketarget>search</maketarget>
|
||||
key=<replaceable>string</replaceable></command> または
|
||||
<command>make <maketarget>quicksearch</maketarget>
|
||||
key=<replaceable>string</replaceable></command>
|
||||
|
@ -633,6 +634,415 @@ docbook =
|
|||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="pkgng-intro">
|
||||
<title><application>pkgng</application> によるバイナリ
|
||||
package の管理</title>
|
||||
|
||||
<para><application>pkgng</application> は、伝統的な &os; の
|
||||
<application>pkg_install</application> package
|
||||
管理ツールの置き換えとなるものであり、
|
||||
バイナリ packages をより早く、
|
||||
より簡単に管理できるようにする数多くの機能を提供します。
|
||||
<application>pkgng</application> の最初のリリースは
|
||||
2012 年 8 月に行われました。</para>
|
||||
|
||||
<para><application>pkgng</application> は <filename
|
||||
role="package">ports-mgmt/portmaster</filename> や <filename
|
||||
role="package">ports-mgmt/portupgrade</filename> などの
|
||||
port 管理ツールの置き換えではありません。
|
||||
<filename role="package">ports-mgmt/portmaster</filename> および
|
||||
<filename role="package">ports-mgmt/portupgrade</filename> は、
|
||||
サードパーティ製ソフトウェアをバイナリ packages および
|
||||
Ports Collection の両方の形式からインストールできますが、
|
||||
<application>pkgng</application> はバイナリ packages のみをインストールします。</para>
|
||||
|
||||
<sect2 id="pkgng-initial-setup">
|
||||
<title><application>pkgng</application> 入門</title>
|
||||
|
||||
<para>&os; 9.1 以降では、
|
||||
<application>pkgng</application> のための "ブートストラップ"
|
||||
ユーティリティが用意されています。
|
||||
ブートストラップユーティリティは <application>pkgng</application>
|
||||
をダウンロードし、インストールします。</para>
|
||||
|
||||
<para>システムをブートストラップするためには、
|
||||
以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>/usr/sbin/pkg</userinput></screen>
|
||||
|
||||
<para>これより前のバージョンの &os; では、Ports Collection
|
||||
または packages を用いてインストールする必要があります。</para>
|
||||
|
||||
<para><application>pkgng</application> port
|
||||
をインストールするには以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>cd /usr/ports/ports-mgmt/pkg</userinput>
|
||||
&prompt.root; <userinput>make</userinput>
|
||||
&prompt.root; <userinput>make install clean</userinput></screen>
|
||||
|
||||
<para>package からインストールするには以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg_add -r pkg</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para><application>pkgng</application> package 管理ユーティリティは、
|
||||
&os; 7.<replaceable>X</replaceable> および
|
||||
&os; 8.0 には対応していません。</para>
|
||||
</note>
|
||||
|
||||
<para>&os; のインストールがすでに行われているようなシステムでは、
|
||||
<application>pkg_install</application> package
|
||||
データベースを新しいフォーマットへ変換する必要があります。
|
||||
変換を行うには以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg2ng</userinput></screen>
|
||||
|
||||
<para>このステップは、
|
||||
サードパーティ製ソフトウェアがまだインストールされていないような、
|
||||
新しくインストールされた直後のシステムでは必要ありません。</para>
|
||||
|
||||
<important>
|
||||
<para>このステップは非可逆です。
|
||||
一度 package データベースを <application>pkgng</application>
|
||||
フォーマットへと変換したら、<application>pkg_install</application>
|
||||
ツールを使うべきではありません。</para>
|
||||
</important>
|
||||
|
||||
<note>
|
||||
<para>package データベースの変換では、
|
||||
新しいバージョンへのデータ変換に伴いエラーが出力されることがあります。
|
||||
通常、これらのエラーは無視して構いませんが、
|
||||
<command>pkg2ng</command> 終了後に表示される、
|
||||
変換に失敗したサードパーティ製ソフトウェアの一覧については、
|
||||
これらのソフトウェアを手動で修正する必要があります。</para>
|
||||
</note>
|
||||
|
||||
<para>&os; のバージョンが
|
||||
10.<replaceable>X</replaceable> より前であれば、
|
||||
以下の行を <filename>/etc/make.conf</filename> に追加して、
|
||||
&os; Ports Collection がソフトウェアの登録に、
|
||||
<application>pkg_install</application>
|
||||
ではなく <application>pkgng</application>
|
||||
を用いるように設定してください。</para>
|
||||
|
||||
<programlisting>WITH_PKGNG= yes</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="pkgng-pkg-conf">
|
||||
<title><application>pkgng</application> 環境の設定</title>
|
||||
|
||||
<para><application>pkgng</application> package 管理システムでは、
|
||||
ほとんどのコマンドに対して、package リポジトリを使います。
|
||||
デフォルトの package リポジトリは
|
||||
<filename>/usr/local/etc/pkg.conf</filename>、または
|
||||
<envar>PACKAGESITE</envar> 環境変数で定義されます。
|
||||
この環境変数は、設定ファイルを上書きします。</para>
|
||||
|
||||
<para>その他の <application>pkgng</application>
|
||||
の設定オプションについては、
|
||||
pkg.conf(5) に記述されています。</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="pkgng-basic-usage">
|
||||
<title>基本的な <application>pkgng</application> の操作</title>
|
||||
|
||||
<para><application>pkgng</application> の利用情報は、
|
||||
man.pkg(8) のマニュアルページや、
|
||||
<command>pkg</command> を引数なしに実行すると表示されます。</para>
|
||||
|
||||
<para>各 <application>pkgng</application> コマンドの引数は、
|
||||
コマンドに固有なマニュアルページに記述されています。
|
||||
たとえば、<command>pkg install</command> のマニュアルページを読むには、
|
||||
以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg help install</userinput></screen>
|
||||
|
||||
<screen>&prompt.root; <userinput>man pkg-install</userinput></screen>
|
||||
|
||||
<sect3 id="pkgng-pkg-info">
|
||||
<title><application>pkgng</application> を使ってインストールされた
|
||||
package の情報を得るには</title>
|
||||
|
||||
<para><command>pkg info</command> を実行すると、
|
||||
システムにインストールされている package 情報が得られます。
|
||||
&man.pkg.info.1; 同様、すべての package のバージョン、
|
||||
および説明の一覧が表示されます。</para>
|
||||
|
||||
<para>ある特定の package の情報が必要であれば、
|
||||
以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg info <replaceable>packagename</replaceable></userinput></screen>
|
||||
|
||||
<para>たとえば、システムにインストールされている
|
||||
<application>pkgng</application> の情報を調べるには、
|
||||
以下のように実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg info pkg</userinput>
|
||||
pkg-1.0.2 New generation package manager</screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="pkgng-installing-deinstalling">
|
||||
<title><application>pkgng</application>
|
||||
を用いた packages のインストールと削除</title>
|
||||
|
||||
<para>通常、ほとんどの &os; ユーザは、バイナリパッケージを
|
||||
<command>pkg install
|
||||
<replaceable>packagename</replaceable></command>
|
||||
でインストールすることでしょう。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg install <replaceable>packagename</replaceable></userinput></screen>
|
||||
|
||||
<para><xref linkend="pkgng-pkg-conf"/> で説明した通り、
|
||||
<command>pkg install</command> はリポジトリデータを使用します。
|
||||
これとは反対に、pkg-add(8) ではリポジトリデータは用いられなければ、
|
||||
定義されている <envar>PACKAGESITE</envar> も使われません。
|
||||
そのため、依存関係は適切には追跡されず、足りない依存についてもリモートホストからダウンロードすることもありません。
|
||||
この節では、<command>pkg install</command> の使用方法について説明します。
|
||||
<command>pkg add</command> の使用方法については pkg-add(8)
|
||||
をご覧ください。</para>
|
||||
|
||||
<para>追加のバイナリ package は、
|
||||
<command>pkg install</command> によりインストールされます。
|
||||
たとえば、
|
||||
<application>curl</application> をインストールするには以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg install curl</userinput>
|
||||
Updating repository catalogue
|
||||
Repository catalogue is up-to-date, no need to fetch fresh copy
|
||||
The following packages will be installed:
|
||||
|
||||
Installing ca_root_nss: 3.13.5
|
||||
Installing curl: 7.24.0
|
||||
|
||||
The installation will require 4 MB more space
|
||||
|
||||
1 MB to be downloaded
|
||||
|
||||
Proceed with installing packages [y/N]: <userinput>y</userinput>
|
||||
ca_root_nss-3.13.5.txz 100% 255KB 255.1KB/s 255.1KB/s 00:00
|
||||
curl-7.24.0.txz 100% 1108KB 1.1MB/s 1.1MB/s 00:00
|
||||
Checking integrity... done
|
||||
Installing ca_root_nss-3.13.5... done
|
||||
Installing curl-7.24.0... done</screen>
|
||||
|
||||
<para>新しい package と依存関係から追加された package は、
|
||||
インストール済み package 一覧に表示されます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg info</userinput>
|
||||
ca_root_nss-3.13.5 The root certificate bundle from the Mozilla Project
|
||||
curl-7.24.0 Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers
|
||||
pkg-1.0.2 New generation package manager</screen>
|
||||
|
||||
<para>必要のなくなった packages は、
|
||||
<command>pkg delete</command> を使って削除できます。
|
||||
たとえば、<application>curl</application> が必要なくなったら、
|
||||
以下のようにして削除できます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg delete curl</userinput>
|
||||
The following packages will be deleted:
|
||||
|
||||
curl-7.24.0_1
|
||||
|
||||
The deletion will free 3 MB
|
||||
|
||||
Proceed with deleting packages [y/N]: <userinput>y</userinput>
|
||||
Deleting curl-7.24.0_1... done</screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="pkgng-upgrading">
|
||||
<title><application>pkgng</application> による package
|
||||
のアップグレード</title>
|
||||
|
||||
<para><command>pkg version</command>
|
||||
を用いて古くなった packages を見つけることができます。
|
||||
ローカルに ports ツリーがない場合には、
|
||||
pkg-version(8) は、リモートリポジトリのカタログを利用します。
|
||||
そうでなければ、ローカルの ports ツリーを使って
|
||||
package のバージョンを同定します。</para>
|
||||
|
||||
<para><application>pkgng</application> を用いて、
|
||||
package を新しいバージョンにアップグレードできます。
|
||||
<application>curl</application>
|
||||
の新しいバージョンがリリースされた場合に、ローカル package
|
||||
を以下のようにして新しいバージョンにアップグレードできます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg upgrade</userinput>
|
||||
Updating repository catalogue
|
||||
repo.txz 100% 297KB 296.5KB/s 296.5KB/s 00:00
|
||||
The following packages will be upgraded:
|
||||
|
||||
Upgrading curl: 7.24.0 -> 7.24.0_1
|
||||
|
||||
1 MB to be downloaded
|
||||
|
||||
Proceed with upgrading packages [y/N]: <userinput>y</userinput>
|
||||
curl-7.24.0_1.txz 100% 1108KB 1.1MB/s 1.1MB/s 00:00
|
||||
Checking integrity... done
|
||||
Upgrading curl from 7.24.0 to 7.24.0_1... done</screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="pkgng-auditing">
|
||||
<title><application>pkgng</application> による package
|
||||
の検証</title>
|
||||
|
||||
<para>時折、Ports Collection
|
||||
に含まれているソフトウェアに脆弱性が見つかることがあります。
|
||||
<application>pkgng</application> は、<filename
|
||||
role="package">ports-mgmt/portaudit</filename> package
|
||||
同様の検証機能を持っています。
|
||||
システムにインストールされているソフトウェアを検証するには、
|
||||
以下のように実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg audit -F</userinput></screen>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="pkgng-advanced-usage">
|
||||
<title>高度な <application>pkgng</application> の利用</title>
|
||||
|
||||
<sect3 id="pkgng-autoremove">
|
||||
<title> <application>pkgng</application> によるリーフ依存 ports
|
||||
の自動削除</title>
|
||||
|
||||
<para>package を削除すると、不必要な依存 ports、たとえば上の例では
|
||||
<filename role="package">security/ca_root_nss</filename>
|
||||
が残されることがあります。
|
||||
これらの packages は、インストールされたままで、
|
||||
どこからも依存されません。
|
||||
依存のために導入され、現在は不必要になった package は、
|
||||
以下のようにすると自動的に検出され、削除されます。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg autoremove</userinput>
|
||||
Packages to be autoremoved:
|
||||
ca_root_nss-3.13.5
|
||||
|
||||
The autoremoval will free 723 kB
|
||||
|
||||
Proceed with autoremoval of packages [y/N]: <userinput>y</userinput>
|
||||
Deinstalling ca_root_nss-3.13.5... done</screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="pkgng-backup">
|
||||
<title><application>pkgng</application> package
|
||||
データベースのバックアップ</title>
|
||||
|
||||
<para><application>pkg_install</application>
|
||||
package 管理システムとは異なり、
|
||||
<application>pkgng</application> には package
|
||||
データベースバックアップのメカニズムが含まれています。
|
||||
package データベースの内容を手動でバックアップするには、
|
||||
以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg backup -d <replaceable>pkgng.db</replaceable></userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>ファイル名の <replaceable>pkgng.db</replaceable>
|
||||
を適切なファイル名に置き換えてください。</para>
|
||||
</note>
|
||||
|
||||
<para>さらに、<application>pkgng</application> は
|
||||
package データベースを毎日自動的にバックアップする
|
||||
&man.periodic.8; スクリプトを含んでいます。
|
||||
&man.periodic.conf.5; の中で、
|
||||
<literal>daily_backup_pkgng_enable</literal> を
|
||||
<literal>YES</literal> に設定するとバックアップされます。</para>
|
||||
|
||||
<tip>
|
||||
<para><application>pkg_install</application>
|
||||
の定期的なスクリプトが、
|
||||
package データベースを同様にバックアップすることを避けるためには、
|
||||
&man.periodic.conf.5; の中で、
|
||||
<literal>daily_backup_pkgdb_enable</literal> を
|
||||
<literal>NO</literal> に設定してください。</para>
|
||||
</tip>
|
||||
|
||||
<para>過去にバックアップした package
|
||||
データベースの中身をリストアするには、以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg backup -r <replaceable>/path/to/pkgng.db</replaceable></userinput></screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="pkgng-clean">
|
||||
<title>古くなった <application>pkgng</application> package
|
||||
の削除</title>
|
||||
|
||||
<para>デフォルトでは、<application>pkgng</application>
|
||||
はキャッシュディレクトリにバイナリ packages を保存します。
|
||||
このディレクトリは、pkg.conf(5) の
|
||||
<envar>PKG_CACHEDIR</envar> 変数で定義されます。
|
||||
<command>pkg upgrade</command> を使って packages
|
||||
をアップグレードする際には、
|
||||
アップグレードされた package
|
||||
の古いバージョンは自動的には削除されません。</para>
|
||||
|
||||
<para>システムから古いバイナリ package を削除するには、
|
||||
以下を実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg clean</userinput></screen>
|
||||
</sect3>
|
||||
|
||||
<sect3 id="pkgng-set">
|
||||
<title><application>pkgng</application> package
|
||||
メタデータの変更</title>
|
||||
|
||||
<para>歴史的に &os; Ports Collection
|
||||
は、メジャーバージョン番号の変更に対応できます。
|
||||
<application>pkg_install</application> とは異なり、
|
||||
<application>pkgng</application> には、
|
||||
package の情報をアップデートするコマンドが組み込まれています。
|
||||
たとえば、<filename
|
||||
role="package">lang/php5</filename> のバージョンが、もともとは
|
||||
<literal>5.3</literal> でしたが、<literal>5.4</literal>
|
||||
がリリースされたことに伴い
|
||||
<filename role="package">lang/php53</filename>
|
||||
へと名前が変更される場合、
|
||||
<application>pkg_install</application> では、
|
||||
package のデータベースを、
|
||||
どの port がインストール元であったかという情報を変更するために
|
||||
<filename role="package">ports-mgmt/portmaster</filename>
|
||||
のような別のソフトウェアを必要とします。</para>
|
||||
|
||||
<para><filename
|
||||
role="package">ports-mgmt/portmaster</filename> および
|
||||
<filename role="package">ports-mgmt/portupgrade</filename>
|
||||
ports とは異なり、引数に与えるバージョンの新、旧の順番は異なります。
|
||||
<application>pkgng</application> での構文は、<command>pkg set -o
|
||||
<replaceable>category/oldport</replaceable>:<replaceable>category/newport</replaceable></command> となります。</para>
|
||||
|
||||
<para>たとえば、上記の例の package の情報を変更するには、
|
||||
以下のように実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg set -o lang/php5:lang/php53</userinput></screen>
|
||||
|
||||
<para>別の例として、<filename
|
||||
role="package">lang/ruby18</filename> を <filename
|
||||
role="package">lang/ruby19</filename> にアップデートするには、
|
||||
以下のようにしてください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg set -o lang/ruby18:lang/ruby19</userinput></screen>
|
||||
|
||||
<para>最後の例として、
|
||||
<filename>libglut</filename> 共有ライブラリの情報を <filename
|
||||
role="package">graphics/libglut</filename> から <filename
|
||||
role="package">graphics/freeglut</filename> へと変更するには、
|
||||
以下のように実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg set -o graphics/libglut:graphics/freeglut</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>package の情報を変更したら、多くの場合、
|
||||
情報が変更された package に依存している
|
||||
packages を再インストールすることが重要となります。
|
||||
依存 packages を再インストールするには、
|
||||
以下のように実行してください。</para>
|
||||
|
||||
<screen>&prompt.root; <userinput>pkg install -Rf <replaceable>graphics/freeglut</replaceable></userinput></screen>
|
||||
|
||||
</note>
|
||||
</sect3>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="ports-using">
|
||||
<title>Ports Collection の利用</title>
|
||||
|
||||
|
|
Loading…
Reference in a new issue