perf
監視ツールをインストールするにはどうすればよいですか?
perf
ユーティリティは、 linux-tools パッケージにあります。
Ubuntu 14.04では、3つのパッケージをインストールする必要がありました。
apt-get install linux-tools-common linux-tools-generic linux-tools-`uname -r`
適切なカーネルリリース用にこのツールをインストールしていることを確認してください。入力するだけの場合:
Sudo apt-get install linux-tools
マシンの最新のLinuxリリース用にインストールされ、以前のバージョンを起動する場合(安定性のためなど)、エラーが発生します。私の場合、.43ではなく.45でインストールされ、次のコマンドを使用してインストールする必要がありました。
Sudo apt-get install linux-tools-3.2.0.43
次のように入力して、カーネルのリリースを見つけることができます:uname -r
正しく動作することを確認するには、次を試してください:perf record /bin/ls
ズームツール をインストールする場合に備えて、すべてのユーティリティを使用できるようにするにはPerfをインストールする必要があります。
カーネルバージョンに関係なく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
は現在のバージョンを確認します
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
を必要とします。
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を手動でインストールしました。
次の2つのコマンドを実行すると実行できます!
Sudo apt-get install linux-tools-common
Sudo apt-get install linux-tools
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
を非ルートとして使用しようとしたときに、permission-errorに遭遇した場合は、こちらをご覧ください。
Ubuntuの「perf」は、カーネル固有のperfバイナリを呼び出すシェルスクリプトです。
しかし、実際には必要ありません。perfは互換性があります。ラッパーを/ usr/binから削除し、perfバイナリを./lib/linux-tools*からコピーします。