web-dev-qa-db-fra.com

Comment installer l'outil de surveillance "perf"?

Comment installer l'outil de surveillance perf?

72
samarasa

L'utilitaire perf est disponible dans le package linux-tools .

66
James Henstridge

Sur Ubuntu 14.04, j'ai dû installer trois paquets:

apt-get install linux-tools-common linux-tools-generic linux-tools-`uname -r`
56
notpeter

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.

25
Mona Jalal

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

17
bodha

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.

5
Drew Noakes

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.

4

Exécuter les deux commandes suivantes le fera!

Sudo apt-get install linux-tools-common 
Sudo apt-get install linux-tools
1
phoenix bai

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 perfa 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 perfen tant que non-root, regardez ici:

Lancer perf sans droits root

1
Darkonaut

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*.

0
prabha101