Comment installer l'outil de surveillance perf
?
L'utilitaire perf
est disponible dans le package linux-tools .
Sur Ubuntu 14.04, j'ai dû installer trois paquets:
apt-get install linux-tools-common linux-tools-generic linux-tools-`uname -r`
Assurez-vous d’installer cet outil pour la version correcte du noyau. Si vous tapez simplement:
Sudo apt-get install linux-tools
Il l'installera pour la dernière version de Linux sur votre ordinateur et si vous démarrez une version précédente (par exemple, pour des raisons de stabilité), il se trompera. Dans mon cas, il a été installé pour .45 au lieu de .43 et j'ai dû utiliser la commande suivante pour l'installer:
Sudo apt-get install linux-tools-3.2.0.43
Vous pouvez trouver votre version du noyau en tapant: uname -r
Pour vous assurer que tout fonctionne correctement, vous pouvez essayer ceci: perf record /bin/ls
Juste au cas où vous allez installer outil Zoom , vous devez avoir installé Perf pour pouvoir utiliser tous ses utilitaires.
Pour obtenir la dernière version de perf indépendamment de la version du noyau (la version de perf est indépendante de la version du noyau):
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
cd linux/tools/perf
make
cp perf /usr/bin
perf --version
pour vérifier la version actuelle
Dans 14.04, le package linux-tools
n'existe pas sans réserve:
$ Sudo apt-get install linux-tools
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package linux-tools is a virtual package provided by:
linux-tools-virtual 3.13.0.36.43
linux-tools-lowlatency 3.13.0.36.43
linux-tools-generic-lts-trusty 3.13.0.36.43
linux-tools-generic-lts-saucy 3.13.0.36.43
linux-tools-generic 3.13.0.36.43
You should explicitly select one to install.
E: Package 'linux-tools' has no installation candidate
Au lieu de cela, vous pouvez installer l’un des packages répertoriés en fonction du noyau que vous avez installé. La plupart des utilisateurs voudront linux-tools-generic
.
J'ai installé Linux 3.17.2 sur ma machine et essayé
Sudo apt-get install linux-tools-3.17.2
cela montrait que linux-tools n'était pas présent. Dans ce cas, téléchargez la version du noyau Linux requise, allez à linux-> outils-> perf:
cd linux/tools/perf
puis lancez la commande make:
make
puis exécutez la commande make install:
make install
puis redémarrez. Vous venez d'installer perf manuellement.
Exécuter les deux commandes suivantes le fera!
Sudo apt-get install linux-tools-common
Sudo apt-get install linux-tools
Voici comment cela a fonctionné pour moi sur Ubuntu 18.04:
Après Command 'perf' not found
, il a suggéré d’installer avec Sudo apt install linux-tools-common
. Faire cela et essayer de lancer perf
a toujours pour résultat:
WARNING: perf not found for kernel 4.15.0-39
You may need to install the following packages for this specific kernel:
linux-tools-4.15.0-39-generic
linux-cloud-tools-4.15.0-39-generic
You may also want to install one of the following packages to keep up to date:
linux-tools-generic
linux-cloud-tools-generic
J'ai décidé de Sudo apt-get install linux-tools-generic
et c'était suffisant.
Si vous rencontrez une erreur de permission lorsque vous essayez d'utiliser perf
en tant que non-root, regardez ici:
Sur ubuntu "perf" est un script shell qui appelle un perf binaire spécifique au noyau.
Mais ce n'est pas vraiment nécessaire, perf est compatible. Supprimez simplement le wrapper de/usr/bin et copiez-y l’un des fichiers binaires de ./lib/linux-tools*.