如何安装“性能”监控工具?


Answers:



59

在Ubuntu 14.04上,我必须安装三个软件包:

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

5
当我尝试时,仅使用sudo apt-get install linux-tools-common linux-tools-generic(跳过部分,具体取决于内核版本)就足够了。
Martin R.

4
@ Martin-R linux-tools-generic始终指向最新内核版本的工具。当运行较旧的内核(例如,具有两个月正常运行时间的服务器)时,如果要在不重新启动到较新内核的情况下执行性能,则必须显式安装与该内核配对的工具(因此,进行uname -rShell扩展)。
notpeter 2015年

sudo apt-get更新sudo apt-get -y安装linux-tools-common linux-tools-generic linux-tools-uname -r
dylanninin

25

确保为正确的内核版本安装此工具。如果您只输入:

sudo apt-get install linux-tools

它将为您的计算机上的最新Linux版本安装它,并且如果您正在引导以前的版本(出于稳定性的原因),它将出错。就我而言,它安装的是.45而不是.43,我必须使用以下命令进行安装:

sudo apt-get install linux-tools-3.2.0.43

您可以通过键入以下内容找到您的内核版本: uname -r

为确保其正常工作,您可以尝试以下操作: perf record /bin/ls

万一您要安装Zoom工具,您需要安装Perf才能使用其所有实用程序。


18

要获得最新版本的perf,而与内核版本无关(perf版本与内核版本无关):

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 检查当前版本


6

在14.04中,linux-tools不存在不合格的软件包:

$ 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

相反,您可以根据所安装的内核来安装列出的软件包之一。大多数用户会想要linux-tools-generic


4

我在机器上安装了Linux 3.17.2并尝试

sudo apt-get install linux-tools-3.17.2

它表明linux-tools不存在。在这种情况下,下载所需的linux内核版本,转到linux-> tools-> perf:

cd linux/tools/perf

然后运行make命令:

make

然后运行make install命令:

make install

然后重新启动。您只是手动安装了perf。


不需要重新启动。另外,如果您要从源代码进行编译;linux-tools-3.17.2应该没有必要
Heartinpiece

1

运行以下两个命令即可!

sudo apt-get install linux-tools-common 
sudo apt-get install linux-tools

不起作用 我正在使用12.04。我收到针对内核3.2.0-60找不到的错误perf。您可能需要安装linux-tools-3.2.0-60-generic
Rishi Dua

这看起来不起作用。
SmallChess

1

这是在Ubuntu 18.04上对我有用的方法:

之后Command 'perf' not found,建议使用进行安装sudo apt install linux-tools-common。这样做并尝试perf随后运行仍会导致:

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

我决定了sudo apt-get install linux-tools-generic,这就足够了。

如果您尝试以perf非root用户身份使用时遇到权限错误,请查看此处:

无根权限运行性能


我得到了同样的警告。但是随后我运行了您建议的命令,但仍然收到相同的警告。
6005

linux-tools-oem似乎已经足够。
6005

1
@ 6005 Thx作为反馈,但是我不知道为什么您会经历不同的行为。
Darkonaut

0

在ubuntu上,“ perf”是一个外壳程序脚本,它调用内核特定的perf二进制文件。

但这实际上不是必需的,perf是兼容的。只需从/ usr / bin中删除包装器,然后将./lib/linux-tools*中的任何性能二进制文件复制到其中即可。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.