Comment trouver à quel package appartient un fichier sous Linux

Le package Linux est une archive de fichiers compressés qui contient tous les fichiers appartenant à des applications spécifiques. Dans certaines situations, vous devrez peut-être trouver le nom du package appartenant à un fichier.

Dans ce tutoriel, nous apprenons à trouver à quel package appartient ou possède un fichier dans le système Linux.

Quel paquet fournit le fichier sur le système Ubuntu/Debian

Pour trouver quel paquet fournit le fichier sur le système Ubuntu/Debian, nous avons quelques méthodes.

Utiliser dpkg

Vous pouvez utiliser les commandes dpkg et dpkg-query pour rechercher le package qui fournit un fichier. Cette commande recherche un nom de fichier dans les packages installés.

Syntaxe:

dpkg -S filename
dpkg-query -S filename

Pour example, pour trouver à quel package appartient le fichier /bin/ls, utilisez la commande suivante.

$ dpkg -S /bin/ls

Utiliser dpkg-query

Vous pouvez également utiliser la commande dpkg-query pour trouver le nom du package pour le fichier installé.

$ dpkg-query -S /bin/ls
$ dpkg-query -S '/bin/ls'
$ dpkg-query -S 'passwd*'

Utiliser apt-file

Vous pouvez utiliser apt-file pour rechercher des fichiers dans les packages DEB sur votre système, ainsi que des packages qui ne sont pas installés sur vos systèmes Debian mais qui sont disponibles via les référentiels.

Le package apt-file n’est pas installé par défaut. Pour installer apt-file sur Ubuntu et d’autres distributions Linux basées sur Debian, tapez :

$ sudo apt install apt-file

Assurez-vous de mettre à jour le cache de la base de données, tapez :

$ sudo apt-file update

Recherchons maintenant le package qui fournit la commande route, utilisez la commande suivante.

$ apt-file search 'bin/route'

commande de recherche de fichier apt

Sur le côté gauche, vous pouvez voir le nom du package appartenant à la commande route.

Quel package fournit le fichier sur le système basé sur RHEL

Ceci est pris en charge sur les distributions Linux telles que Redhat, Fedora, AlmaLinux, Rocky Linux, CentOS Stream et Oracle Linux.

Utilisation de la commande DNF

Vous pouvez utiliser provides option avec DNF pour trouver le package d’un fichier dans un système basé sur RHEL tel que Fedora. Il correspond à toutes les offres de fichiers de tous les packages disponibles.

Syntaxe:

dnf provides filename
dnf provides *filename
dpkg-query --search '/path/to/file'

Pour example, si vous voulez trouver le package d’un fichier binaire, utilisez la commande suivante.

$ dnf provides *bin/ls

dnf fournit la commande

Utilisation de RPM et de la commande Yum

Vous pouvez utiliser la commande rpm pour rechercher le package qui fournit un fichier spécifique.

Syntaxe:

rpm -rf filename
rpm -q --whatprovides filename

Cela trouvera le nom du package pour le fichier de package installé

Pour example, si vous voulez trouver le package rpm qui fournit le fichier /bin/ls, utilisez la commande suivante.

$ rpm -qf /bin/ls

commande rpm -qf

Vous pouvez également utiliser la commande rpm suivante :

$ rpm -q --whatprovides /etc/nginx/nginx.conf

rpm -q --whatprovide commande

À l’aide de la commande yum, vous pouvez procéder comme suit :

$ yum whatprovides netstat

Vous pouvez également utiliser un fichier de bibliothèque particulier pour rechercher le package auquel il appartient

Rechercher des fichiers non installés sur Debian/Ubuntu

Vous pouvez visiter paquets Debian et Recherche de paquets Ubuntu et recherchez le fichier. Le résultat affichera le nom du package. Ensuite, vous pouvez utiliser votre commande apt pour installer le package respectif.

Recherche de paquets Ubuntu

Conclusion

Dans ce didacticiel, nous avons appris à trouver à quel package appartient un fichier sous Linux. Merci d’avoir lu, s’il vous plaît fournir vos commentaires et suggestions.