J'utilise un système de Debian minimal qui n'a pas le programme top
installé. J'ai essayé d'installer haut avec Sudo apt-get install top
, mais top
n'est pas un nom de paquet.
Il semble que top
fait partie d'un autre paquet. Comment puis-je savoir quel paquet je devrais installer pour l'obtenir? Plus généralement, comment puis-je trouver le paquet contenant un programme?
La réponse directe est procps
. Voici comment vous pouvez le trouver pour vous-même:
# Install apt-file, which allows you to search
# for the package containing a file
Sudo apt-get install apt-file
# Update the package/file mapping database
Sudo apt-file update
# Search for "top" at the end of a path
apt-file search --regexp '/top$'
La sortie de la commande finale devrait ressembler à quelque chose comme ceci:
crossfire-maps: /usr/share/games/crossfire/maps/santo_dominion/magara/well/top
crossfire-maps-small: /usr/share/games/crossfire/maps/santo_dominion/magara/well/top
liece: /usr/share/emacs/site-LISP/liece/styles/top
lxpanel: /usr/share/lxpanel/profile/two_panels/panels/top
procps: /usr/bin/top
quilt: /usr/share/quilt/top
Vous pouvez voir que seul procps
fournit un exécutable dans votre chemin standard, ce qui donne un indice qu'il pourrait être le bon. Vous pouvez également en savoir plus sur procps
pour vous assurer que cela semble être le bon:
$ apt-cache show procps
Package: procps
Version: 1:3.3.3-3
[...]
Description-en: /proc file system utilities
This package provides command line and full screen utilities for browsing
procfs, a "pseudo" file system dynamically generated by the kernel to
provide information about the status of entries in its process table
(such as whether the process is running, stopped, or a "zombie").
.
It contains free, kill, pkill, pgrep, pmap, ps, pwdx, skill, slabtop,
snice, sysctl, tload, top, uptime, vmstat, w, and watch.
Vous pouvez rechercher des choses avec apt-cache search ...
, bien que ce soit juste une correspondance sur les noms et des descriptions de paquets, ce qui ne suffit parfois pas. Dans ce cas en utilisant, par exemple,
apt-file search top
pourrait fonctionner - il trouve tous les packages qui ont un fichier avec top
dans leur nom, mais pour cela, c'est un peu zany (il comprend setopt
, .desktop
, etc). Pour affiner cela selon la réponse de Chris:
apt-file search --regexp 'bin/top$'
Cela trouvera des packages qui ont un chemin de fichier finissant ('$' est ( REG ULAR exp Ression Syntaxe signifiant la fin) dans bin/top
; Les exécutables sont toujours dans un bin
ou sbin
répertoire. Quand vous trouvez ce que vous recherchez:
apt-get install whatever
Dans ce cas whatever
est apparemment procps
.
apt-File Recherche Tous les repos sont répertoriés dans /etc/apt/sources.list et bases de données associées, tant que Repo servent un contenu -% Architecture% .gz.
si vous pensez que le fichier d'intérêt est un nom exécutable "haut", utilisez cette regex. '^/(USR /)? S? Bin/Top $'
pour le repo de Debian officiel, il existe une interface Web https://packages.debian.org/file:top , il existe d'autres options de recherche.