Monday, January 10, 2011

What is the equivalent apt-get or aptitude command

Is there an equivalent to the yum "whatprovides" option in apt-get?

For example on CentOS

yum whatprovides /usr/share/gdm/themes/TreeFlower/background.png

Tells me

redhat-logos-4.9.99-11.el5.centos.noarch : CentOS-related icons and pictures.
Repo        : base
Matched from:
Filename    : /usr/share/gdm/themes/TreeFlower/background.png

Can I get similar functionality on the command line in Ubuntu?

  • This depends on whether the package containing the file is already installed. If so, use dpkg -S filename.

    If your intention is to find out which package to install to get a certain file, one option is to use the online packages.ubuntu.com: scroll down to "Search the contents of packages". Make sure that the right distribution is selected. If you're looking for a files irrespective of the path, check the appropriate option.

    There is also apt-file. Because this method required updating the files database, however, I prefer the other, instant option.

    Richard Holloway : +1 Yes the dpkg -S works perfectly for my needs.
    From loevborg
  • You want the 'apt-file' command.

    apt-file search /usr/share/gdm/themes/TreeFlower/background.png
    

    Before using it, you may need to create or update its database by running:

    apt-file update
    
    Richard Holloway : +1 this does seem to be useful but is not installed by default on my machine so I am modding you up but accepting loevborg answer
  • wajig whichpkg /usr/share/gdm/themes/TreeFlower/background.png

    You'll have to install wajig, which is a frontend to a bunch of utilities related to apt. If you use wajig, you can use all of those tools without having to memorize their names.

0 comments:

Post a Comment