Debian Stretchで観察した内容は次のとおりです。
$ deborphan
cgroup-bin
マニュアルページによると、これは他のパッケージがそれに依存しないことを意味しますcgroup-bin
。確認してみましょう。
$ apt-cache rdepends cgroup-bin
cgroup-bin
Reverse Depends:
cgroup-tools
mininet
cgroup-tools
依存関係はcgroup-tools
次のように確認されます。
$ apt remove cgroup-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
cgroup-tools
Use 'apt autoremove' to remove it.
The following packages will be REMOVED:
cgroup-bin
- これら2つの
apt
コマンドが互いに矛盾するのはなぜですかdeborphan
?上記のコマンドdeborphan
を誤って理解しましたかapt
?
さらに調査すると:
$ apt-cache rdepends cgroup-tools
cgroup-tools
Reverse Depends:
cgroup-bin
$ apt-cache rdepends cgroup-bin
cgroup-bin
Reverse Depends:
cgroup-tools
mininet
cgroup-tools
cgroup-bin
そしてcgroup-tools
相互依存的である。
この循環参照は正常ですか(または「理由のためにこのようになりましたか?」)?だから
apt remove cgroup-bin
実際に両方を削除しようとしていると思いますか?とにかく、なぜ
deborphan
それをリストアップするのですかcgroup-bin
?削除すると、cgroups
ユーティリティ全体が削除されます。
答え1
2つのパッケージの関係は次のとおりです。
cgroup-bin
によって異なりますcgroup-tools
。cgroup-tools
以前のバージョンを破棄して交換しますcgroup-bin
。
後者は依存関係ではありませんが、apt-cache rdepends
実行する必要がある厳密な依存関係のみを確認するために基本的に考慮されます。
apt-cache rdepends --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances cgroup-bin
これだけが表示されますmininet
。
コマンドに削除がapt remove
表示された後は、これを行う必要はありません。依存している場合は、もはや不要とは言わず、アンインストールが必要だと言い、後で両方のパッケージが表示されます。cgroup-tools
cgroup-bin
cgroup-bin
cgroup-tools
cgroup-tools
cgroup-bin
apt remove cgroup-bin
cgroup-tools
cgroup-tools
cgroup-bin
cgroup-tools
The following packages will be REMOVED:
したがって、すべてのコマンドは予想される結果を生成し、矛盾はありません。これに依存するものがないのでcgroup-bin
削除できます。
deborphan
cgroup-bin
アンインストール候補としてリストされているのcgroup-bin
は、これがトランジェントパッケージであるためです。何も含まれておらず、ただcgroup-tools
楽しいcgroup-tools
パッケージです。 (cgroup-tools
手動インストールにはMarkを使用する必要がありますapt-mark manual
。)