Emerge

emergeは、Gentoo Linuxのパッケージ管理システムPortageのコマンドラインインターフェース(CUI)フロントエンドです。Gentoo Linuxでは、パッケージをインストールまたはアップグレードする際に、まずソースコードをダウンロードします。次に、ダウンロードしたソースコードをローカル環境に合わせて設定し、コンパイルを実行します。最後に、コンパイルされたバイナリを所定のディレクトリにインストールします。この一連のプロセスは、ebuildと呼ばれるスクリプトに基づいて実行され、その操作を円滑にするために提供されるのがemergeです。

emergeの使用例



全てのコマンドは、詳細なログを表示する「-v」(--verbose)オプションを付けて実行できます。

システムのアップデート


システムをアップデートする際は、まずパッケージリポジトリに接続し、最新のebuild情報を取得します。このためには、次のコマンドを使用します。

bash
emerge --sync


このコマンドは、システムに存在するebuildとの差分をダウンロードするため、システムを長期間更新していない場合は時間がかかることがあります。その場合は、次のコマンドで最新のスナップショット全体をダウンロードできます。

bash
emerge-webrsync


システム全体のアップグレードは、次のコマンドで行います。

bash
emerge -uD --with-bdeps=y @world


このコマンドは、ソースコードのダウンロード、コンパイル、インストールを自動的に実行します。

各オプションの意味は以下の通りです。

`-u`: アップデートを実行します。単独で使用すると、`/var/lib/portage/world`ファイルに記述されたパッケージ(`@world`)の依存関係のみを考慮してアップデートします。
`-D`: `@world`に記述されていない依存関係でインストールされたパッケージの依存関係も考慮してアップデートします。
`--with-bdeps=y`: ビルド時依存(パッケージのコンパイルやビルド時に必要だが、インストール後には不要になるパッケージ)を更新します。
`@world`: `/var/lib/portage/world`に記述されたパッケージを示します。この内容は、ファイルを編集することで変更できます。

上記のコマンドは、以下のように省略せずに記述することもできます。

bash
emerge update deep --with-bdeps=y @world


また、emergeコマンドは、実行する操作の確認を行うオプションも提供しています。

`-p` (--pretend): 実行する操作を表示します。
`-a` (--ask): 実行する操作を表示した後、実行するかどうかを選択できます。

システム全体に適用されているUSEフラグの変更


`/etc/portage/make.conf`ファイルを編集してUSEフラグを変更した場合、以下のコマンドで変更を適用できます。

bash
emerge -DN @world


これは、以下のコマンドと同じです。

bash
emerge deep newuse @world


ほぼ同じ操作を行うコマンドとして、以下があります。

bash
emerge -DU @world


`-U`は`changed-use`オプションであり、`update`とは異なります。`-N`を`-U`に置き換えると、ユーザーが有効にしていないUSEフラグの変更によるパッケージのリビルドを含めずにシステムを更新できます。このコマンドも、以下のように置き換えられます。

bash
emerge deep changed-use @world


システムのクリーンアップ


システムのクリーンアップを行うには、以下のコマンドを実行します。

bash
emerge -c


このコマンドは、`@world`の依存関係にない孤立したパッケージを削除します。安全のため、以下のオプションを付けて、コマンド実行前に確認することを推奨します。

bash
emerge -pc


または

bash
emerge -ac

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。