
Gentooから特定のパッケージを削除したいので、Emergeのマニュアルページを見ました。このオプションが見つかりました--unmerge
。
警告:これを行うと、重要なパッケージが削除される可能性があります!一致するパッケージをすべて削除します。これは依存関係を確認しないため、システムが正常に動作するために必要なパッケージを削除できます。対応するパラメータはAtomまたはebuildです。依存関係認識バージョンの場合 --マージキャンセル、使用--ディープクリーンまたは- 剪定。
しかし、削除したいパッケージがシステムにインストールされている他のパッケージに必要かどうかを確認したいと思います。その機能を提供しませ--depclean
ん--prune
。
--depclean
依存関係でインストールされたが必要なくなったパッケージの削除--prune
「システムからインストールされているパッケージの最も高いバージョンを除くすべてを削除する」
バージョンを確認する依存関係はありませんか--unmerge
?
答え1
depclean
私はそれがあなたが説明する方法で動作するとは思わない。引数なしでこれを実行しますが、パッケージ名を渡すと、追加のunmerge
依存関係チェックのように動作します。からemerge(1)
:
Depclean は、
--unmerge
1 つ以上の Atom が与えられると、逆方向依存関係のない一致するパッケージをマージ解除します。逆依存関係を表示するには、--depclean
withを使用します。--verbose
私は個々のパッケージをマージ解除するときに常に--depclean
()を使います。-c
答え2
同じ結果を得る別の方法(依存関係チェックを介してマージを解除するコマンドではありません):emerge --deselect package
ワールドファイルからパッケージを削除します。これで実行すると、emerge --depclean
他のパッケージで必要でない場合はパッケージが削除されます。
答え3
gentoolkitが役に立つかもしれません:
equery d <atom>
依存関係を最初に確認し、依存関係を確認してからパッケージの削除を続行できます。
答え4
時には、emerge --unmerge
次の警告メッセージが表示されます。
* This action can remove important packages! In order to be safer, use
* `emerge -pv --depclean <atom>` to check for reverse dependencies before
* removing packages.
これは、パッケージのマージを解放する前に依存関係チェックを実行するために推奨される方法のようです。しかし、私はこれを達成するためのより良い自動化された方法があることをまだ望んでいます。