Gentoo Logo

1.  Portage設定

前述したとおり、Portageは、/etc/make.confで定義すべき多くの変数を通して調整可能です。より詳細で完全な情報は、以下のようにしてmake.confのmanページを参照してください。

コード表示 1.1: make.confのmanページを読む

$ man make.conf

1.  ビルドに関するオプション

configureスクリプトとコンパイラのオプション

Portageはアプリケーションをビルドする際に、コンパイラとconfigureスクリプトに以下の変数の内容を渡します。

  • CFLAGS & CXXFLAGS変数は、CおよびC++ソースのコンパイルのために希望するコンパイラフラグを定義します。
  • CHOST変数は、アプリケーションのconfigureスクリプトのためのビルドホスト情報を定義します。
  • MAKEOPTS変数は、makeコマンドに渡され、通常、コンパイル時の並列数を定義するために設定されます。makeオプションに関するより詳細な情報は、makeのmanページにあります。

USE変数は、configureやコンパイルの実行中にも使用されますが、前の章で懇切丁寧に説明されているので、ここでは説明しません。

マージオプション

Portageは、特定のソフトウェアタイトルの新しいバージョンのマージが完了したとき、もう使用されない古いバージョンをシステムから削除します。Portageは、古いバージョンをアンマージする前に、5秒間だけユーザのアクションを待ちます。この5秒は、CLEAN_DELAY変数によって定義されます。

EMERGE_DEFAULT_OPTSを設定することで、emergeが実行されるとき、常に特定のオプションを使用するようにできます。 いくつかの有用なオプションとしては、--ask、--verbose、--treeなどでしょう。

1.  ファイルの保護設定

Portageの保護対象ディレクトリ

Portageは、ファイルが保護対象ディレクトリにない場合、ソフトウェアタイトルの新しいバージョンによって提供されるファイルで上書きします。これらの保護対象ディレクトリは、CONFIG_PROTECT変数によって定義され、通常は設定ファイルがあるディレクトリです。複数のディレクトリが、スペースで区切られて指定されます。

保護対象ディレクトリに書き込まれるファイルは、名前が変更され、ユーザには(推定可能な)設定ファイルの新しいバージョンがあることが警告されます。

以下のようにして、emerge --infoの出力結果から、現在のCONFIG_PROTECT設定を見つけることができます。

コード表示 1.1: CONFIG_PROTECT設定の確認

$ emerge --info | grep 'CONFIG_PROTECT='

Portageの設定ファイル保護機能に関するより詳細な情報は、emergeのmanpageのCONFIGURATION FILESの章で見ることができます。

コード表示 1.1: 設定ファイル保護機能に関するより詳細な情報の参照

$ man emerge

排他ディレクトリ

保護対象ディレクトリのサブディレクトリの一部を'保護対象から除外'するには、CONFIG_PROTECT_MASK変数を使用します。

1.  ダウンロードオプション

サーバの位置情報

必要な情報またはデータが、システムで利用できない場合、Portageは、インターネットから取得しようとします。各種情報およびデータ取得元のサーバ位置情報は、以下の変数によって定義されます。

  • GENTOO_MIRRORS変数は、ソースコードがあるサーバのリストを定義します。(distfiles)
  • PORTAGE_BINHOST変数は、システムの構築済みパッケージがある専用サーバの位置情報を定義します。

三つ目の変数は、Portageツリーを更新するときに使用するrsyncサーバの位置情報に関係します。

  • SYNC変数は、PortageがPortageツリーを取得するために使用する専用サーバを定義します。

GENTOO_MIRRORS変数とSYNC変数は、mirrorselectアプリケーションを通して自動的に設定される可能性があります。mirrorselectを使用する前に、始めにemerge mirrorselectをする必要があります。より詳細な情報は、mirrorselectのオンラインヘルプを以下のようにして参照してください。

コード表示 1.1: mirrorselectに関する詳細な情報の参照

# mirrorselect --help

あなたの環境が、proxyサーバを使用する必要があるなら、プロキシサーバを定義するために、http_proxy変数とftp_proxy変数とRSYNC_PROXY変数を使用できます。

ソースコード取得用コマンド

Portageはソースコードを取得する必要がある場合、デフォルトでwgetコマンドを使用します。FETCHCOMMAND変数によって、このコマンドを変更することができます。

Portageは、既に一部分がダウンロード済みのソースコードを、中断したところから再開することができます。その用途のためのコマンドは、デフォルトでは、wgetコマンドを使用しますが、RESUMECOMMAND変数によって変更することができます。

FETCHCOMMAND変数やRESUMECOMMAND変数に設定したコマンドが、適切な位置にソースコードを保存していることを確認してください。変数内には、ソースコードの位置とdistfilesの位置をそれぞれ正確に示すために、\${URI}と\${DISTDIR}を使用すべきです。

プロトコル別のハンドラもFETCHCOMMAND_HTTP変数、FETCHCOMMAND_FTP変数、RESUMECOMMAND_HTTP変数、RESUMECOMMAND_FTP変数などで定義できます。

rsync設定

Portageツリーを更新する目的で、Portageによって使用されるrsyncコマンドを変更することはできませんが、rsyncコマンドに関連するいくつかの変数を設定することはできます。

  • PORTAGE_RSYNC_OPTSは、それぞれスペース区切りで、同期する時に使われるデフォルトの変数を設定します。 これらは、正確に何をしようとしているのかわからない限り、変更すべきではありません。 特定の必須オプションはPORTAGE_RSYNC_OPTSが空でも使用されることに注意してください。
  • PORTAGE_RSYNC_EXTRA_OPTSは同期する時の追加オプションを設定するために使用されます。 各オプションはスペース区切りです。
    • --timeout=<number>: これは、rsyncが通信がタイムアウトしたと見なすまでに、何秒間接続を待機させておくことができるかを定義します。 この変数のデフォルトは180ですが、ダイヤルアップユーザや低速なコンピュータを使用している人は300以上に設定したほうがよいかもしれません。
    • --exclude-from=/etc/portage/rsync_excludes: これは、rsyncがアップデート処理を行う間、無視すべきパッケージまたはカテゴリを記入したファイルを指しています。 この場合は /etc/portage/rsync_excludesを指しています。 このファイルの構文を知りたい場合は(Portageツリーの一部を使う)を読んでください。
    • --quiet: スクリーンへの出力を減らします。
    • --verbose: 完全なファイルリストを表示します。
    • --progress: 各ファイルに対して進行度合いを表示します。
  • PORTAGE_RSYNC_RETRIESは、rsyncがSYNC変数で指定されたミラーへの接続試行をやめるまでに、何回接続を試みるか定義します。 この変数のデフォルトは3です。

これらのオプションのさらに詳細な情報や他のオプションについては、man rysncを読んでください。

1.  Gentoo設定

ブランチの選択

ACCEPT_KEYWORDS変数によってデフォルトブランチを変更できます。デフォルトは、あなたのアーキテクチャの安定版ブランチです。Gentooのブランチのより詳細な情報は、次の章にあります。

Portageの機能

FEATURES変数を通してPortageの特定の機能を有効にできます。Portageの機能は、前の章((Portageの機能))で説明されています。

1.  Portageの振舞い

リソースの管理

PORTAGE_NICENESS変数によって、Portageが実行される優先順位(nice値)を増減できます。PORTAGE_NICENESS変数の値は、デフォルトのnice値に追加されます

nice値に関するより詳細な情報は、以下のようにして、niceコマンドのmanページを参照してください。

コード表示 1.1: nice値に関するより詳細な情報の参照

$ man nice

出力形式

デフォルトが"false"であるNOCOLOR変数は、カラー出力を止めるべきかどうかを定義します。

ページの更新日 2008年 2月 28日

要約: Portageは、設定ファイル内で設定できる変数や環境変数としての変数を通して、自在に設定可能です。

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.