私はdpkg -S /path/to/file
Debianで何かがどこから来るのかを知るのに慣れています。 〜新しい「usrのすべて」AKAユーザーマージ戦略はしばしばそれを破ります。たとえば、次のようになります。
> dpkg -S /bin/systemd
systemd: /bin/systemd
> readlink -f /bin/systemd
/usr/lib/systemd/systemd
> dpkg -S /usr/lib/systemd/systemd
dpkg-query: no path found matching pattern /usr/lib/systemd/systemd
実際に実行中の実行可能ファイルは /usr/lib/systemd/systemd なので、実行可能ファイルを特定のファイルトレースにdpkg -S
別の usrmerge 認識の代替方法があるかどうか疑問に思うかもしれません。dpkg -S
そのパッケージ?
答え1
/usr
私は-merge-awareに対応することがわかりませんが、dpkg -S
この問題を回避する方法があります。dpkg -S
フルパスは不要なので
dpkg -S lib/systemd/systemd
そして
dpkg -S bin/systemd
あなたが探している答えを提供します。特定のパターンに一致するすべてのファイルを部分文字列としてリストしたくない場合は、以下を追加します*
。
dpkg -S '*lib/systemd/systemd' '*bin/systemd'
また、見ることができますdpkg-query:パスマッチパターン/usr/bin/bashが見つかりません。と/usr
マージの説明(管理者によって作成された)関連する制約のいくつかを説明し、パッケージメソッド(include)によって破損した多くの機能を一覧表示しますdpkg
。dpkg
usrmerge
dpkg -S