Arch Linuxでは、ファイルXを含むインストールするパッケージを見つけるにはどうすればよいですか?


92

特定のバイナリを提供するパッケージを探しているので、インストールできます。どのパッケージがこのバイナリを提供するかを検索するにはどうすればよいですか?(注:これを行うツールが少なくとも1つあることは知っていますが、その名前を忘れました。)


また、私が探しているバイナリは/usr/sbin/ipset、誰かが質問に対する答えを知らなくても、どのパッケージがそれを提供するかについて私をだましてほしかったかどうかです。
xenoterracide

ジルの答えは正しいものです。ipsetに関しては、AUR aur.archlinux.org/packages.php?ID=16553
jasonwryan

回答:


118

pacman 5.0以降、オプションでデータベース検索するための組み込み機能があり-Fます。最初にデータベースを更新します。

sudo pacman -Fy

次に、どのパッケージに含まれ$filenameているかを確認できます

pacman -Fs $filename

または

pacman -Fos $path

完全なパスを検索します。

あなたは同等のものを探していることを知っていたのでapt-file、あなたはパックマン・ロゼッタでそれを調べたかもしれません。

または、pkgfileを使用できます。でインストールしてpacman -S pkgfileから実行します

sudo pkgfile -u

データベースを更新します。パッケージの内容を確認するには$filename、実行します

pkgfile $filename

1
ロゼッタストーンをありがとう!これをpacmanだけでなくrpmディストリビューションにも使用します。
jpaugh

3
pacman -Fsフルパスを検索する場合は、ベース名で検索することに注意してくださいpacman -Fos。例:pacman -Fs /usr/bin/mount.cifs何も返さず、pacman -Fs mount.cifscifs-utilsを正しく返すようにpacman -Fos /usr/bin/mount.cifs
開発

27

グーグルの方法:

site:www.archlinux.org/packages/ bin/filename

そして、公式パッケージではなくAURにある場合:

site:aur.archlinux.org/packages/ bin/filename

悪くない、全く。
ychaouche

素晴らしいヒント、これは良い結果をもたらすようです。次のURLでChromeに「検索エンジン」を作成しましたhttps://www.google.com/search?q=site%3Awww.archlinux.org%2Fpackages%2F+%s
ボレックバーナード

22

ArchWikiから:

$ pacman -Qo df

これにより、プログラムの所有パッケージが生成されますdf(執筆時点では、これはですcoreutils)。

-Qo インストールされたパッケージとそのプログラムでのみ動作します。

パッケージデータベースのクエリでより多くの引数を確認できます


4
それは、どのパッケージがファイルを所有しているのかを伝えるだけであり、それを取得するためにインストールする必要があるものを教えてくれません。
デビッドC.ビショップ

@ DavidC.Bishopそれはまったく同じものではありませんか?
ビクター

6
@Victorいいえ、パッケージを照会するには、システムに既にインストールされている必要があります。
デビッドC.ビショップ

@ DavidC.Bishopああ、あなたは「インストールされたパッケージがファイルを所有している」ことを意味しました。ありがとう!
ビクター

1
コメントで議論された内容を反映するように投稿を編集してください。
ポンペイ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.