Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Dec 2012 11:34:08 +0000 (UTC)
From:      Ryusuke SUZUKI <ryusuke@FreeBSD.org>
To:        doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org
Subject:   svn commit: r40383 - head/ja_JP.eucJP/books/handbook/ports
Message-ID:  <201212141134.qBEBY8Sr050984@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ryusuke
Date: Fri Dec 14 11:34:08 2012
New Revision: 40383
URL: http://svnweb.freebsd.org/changeset/doc/40383

Log:
  - Merge the following from the English version:
  
  	r39727 -> r40082	head/ja_JP.eucJP/books/handbook/ports/chapter.sgml

Modified:
  head/ja_JP.eucJP/books/handbook/ports/chapter.xml

Modified: head/ja_JP.eucJP/books/handbook/ports/chapter.xml
==============================================================================
--- head/ja_JP.eucJP/books/handbook/ports/chapter.xml	Thu Dec 13 22:12:47 2012	(r40382)
+++ head/ja_JP.eucJP/books/handbook/ports/chapter.xml	Fri Dec 14 11:34:08 2012	(r40383)
@@ -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;&nbsp;9.1 以降では、
+	<application>pkgng</application> のための &quot;ブートストラップ&quot;
+	ユーティリティが用意されています。
+	ブートストラップユーティリティは <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;&nbsp;7.<replaceable>X</replaceable> および
+	  &os;&nbsp;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;&nbsp;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;&nbsp;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>
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201212141134.qBEBY8Sr050984>