Skip to main content

How do I find which package contains a certain file?

What to do if you need to install or build a package on Linux and it wants a missing file/library/etc...

Have you ever tried to install package or some vendor software, only to find that the install fails due to a missing library? Here is a collection of methods for finding the package that contains the missing file.

Red Hat Enterprise Linux/CentOS

Using yum

yum whatprovides /full/path/to/missing/filename
Note: In all of these processes, fill in the actual filename and path for which you are looking.

Using rpmfind site

  1. Browse to http://rpm.pbone.net/index.php3/stat/2/simple/2
  2. Enter filename or /full/path/to/missing/filename in the search box (start with just the filename)
  3. Check boxes of rpm-based distributions in which you want to search
  4. Click search

Debian/Ubuntu

apt-file

sudo aptitude install apt-file
sudo apt-file update
apt-file search filename
or
apt-file search /full/path/to/missing/filename

Using Debian's website

  1. Browse to http://www.debian.org/distrib/packages
  2. Scroll to the bottom to the section called "Search the contents of packages"
  3. Enter a single argument into the search field, either filename or /full/path/to/missing/filename
  4. Select your distribution
  5. Select the machine architecture for which you need the missing file
  6. Click "Search"

Comments

Popular posts from this blog

PowerShell One-Liners

Introduction

PowerShell is Microsoft's shell for their product lines. It's now on version 3.0. If you miss the power of the command line while using Windows on either your laptop or servers, PowerShell provides that power.


Important concepts:
Almost all aspects of the Microsoft ecosystem are objects within an overarching structure. You query and manipulate this structure and its objects with PowerShell. This includes all aspects of SharePoint, Active Directory, and Exchange. Other companies, like VMware (see below) have also written PowerShell modules.This "object nature" means that PowerShell pipes pass objects and properties, not just text. Variables store data-structures of objects. 
One-liners

Note: Unwrap the code lines before you use them.

Get Help

Get the usage of the command "Select-Object":

Get-Help Select-Object

Built-in examples for the command "Select-Object":

Get-Help Select-Object -examples | more

Get the list of all commands and sort it:

Fixing SSH connection problems in EGit in Eclipse

Note: I posted a version of this on Stack Overflow. Errors can occur when there is an underlying SSH authentication issue, like having the wrong public key on the git remote server or if the git remote server changed its SSH host key. Often the an SSH error will appear as: "Invalid remote: origin: Invalid remote: origin"
Eclipse will use the .ssh directory you specify in Preferences -> General -> Network Connections -> SSH2 for its ssh configuration. Set it "{your default user directory}.ssh\" . To fix things, first you need to determine which ssh client you are using for Git. This is stored in the GIT_SSH environmental variable. Right-click on "Computer" (Windows 7), then choose Properties -> Advanced System Settings -> Environment Variables. If GIT_SSH contains a path to plink.exe, you are using the PuTTY stack. To get your public key, open PuTTYgen.exe and then load your private key file (*.ppk). The listed public key should match the pu…

How to fix this ssh error from a Cisco switch: ssh_rsa_verify: RSA modulus too small: 512 < minimum 768 bits

Problemssh user@cisco_switch returns:
ssh_rsa_verify: RSA modulus too small: 512 < minimum 768 bits key_verify failed for server_host_key Solution The modulus of the ssh RSA key pair on the switch is too small. If you have access, generate a new key pair on the switch with a larger modulus.
ProcedureLogin with ssh protocol version 1 (ssh space dash one): ssh -1 user@cisco_switch(On the switch): enable(On the switch): Authenticate to "Privileged Exec Mode" mode on the switch.(On the switch): conf t(On the switch): crypto key generate rsa general-keys modulus 1024(On the switch): Press enter to accept that the current key pair for the switch will be replaced. You now should be able to log into the switch with ssh protocol version 2.