85

In the Debian family of OSes, dpkg --search /bin/ls gives:

coreutils: /bin/ls

That is, the file /bin/ls belongs to the Debian package named coreutils. (see this post if you are interested in a package containing a file that isn't installed)

What is the Fedora equivalent?

1 Answer 1

110

You can use rpm -qf /bin/ls to figure out what package your installed version belongs to:

[09:46:58] ~ $ rpm -qf /bin/ls
coreutils-8.5-7.fc14.i686
[09:47:01] ~ $ 

Update: Per your comment, the following should work if you want only the name of the package (I just got a chance to test):

[01:52:49] ~ $ rpm -qf /bin/ls --queryformat '%{NAME}\n'
coreutils
[01:52:52] ~ $ 

You can also use dnf provides /bin/ls to get a list of all available repository packages that will provide the file:

# dnf provides /bin/ls
Last metadata expiration check: 0:17:06 ago on Tue Jun 27 18:04:08 2017.
coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : @System

coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : updates

coreutils-8.25-14.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : fedora
5
  • Is there a way to have rpm display owners of a file without providing a full path? You wanna add a note to that effect?
    – tshepang
    Commented Dec 10, 2010 at 7:27
  • @Tshepang: I think you should be able to add --queryformat '%{NAME}' to accomplish that, but I haven't tested it myself. I can do a quick test and update this after work, though. In the meantime, you might find the info here useful: rpm.org/max-rpm/s1-rpm-query-parts.html Commented Dec 10, 2010 at 14:25
  • 1
    Just wanted to add that OpenSuSE's zypper has a what-provides feature that accomplishes this task. This question comes up first when doing a search, so it would be handy to have this answer even though the question is specific. Commented Apr 4, 2012 at 2:14
  • 4
    For fedora 22 "dnv provides filename" also works Commented Aug 12, 2015 at 19:59
  • 1
    Please, add a note that for files that are not in the system yet one can use a dnf provides "*filename". I'm sure some people are getting to this post by searching for a way to figure out a package by knowing only a filename (usually some development headers or libraries), and it would be nice if the answer would cover both usecases.
    – Hi-Angel
    Commented Aug 8, 2022 at 19:52

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .