Bagaimana cara menginstal alat pemantauan "perf"?


Jawaban:



59

Di Ubuntu 14.04 saya harus menginstal tiga paket:

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

5
Ketika saya mencobanya, cukup menggunakan sudo apt-get install linux-tools-common linux-tools-generic(melewatkan bagian, yang tergantung pada versi kernel) sudah cukup.
— Martin R.

4
@ Martin-R linux-tools-generic selalu menunjuk pada tools untuk versi kernel terbaru. Saat menjalankan kernel yang lebih lama (mis. Server dengan uptime beberapa bulan) jika Anda ingin perf tanpa me-reboot ke kernel yang lebih baru, Anda harus menginstal secara eksplisit alat-alat yang dipasangkan dengan kernel tersebut (maka uname -rekspansi shell).
— notpeter

sudo apt-get update sudo apt-get -y install linux-tools-common-linux-tools-generic linux- uname -r
— tools-

25

Pastikan Anda menginstal alat ini untuk rilis Kernel yang tepat. Jika Anda cukup mengetik:

sudo apt-get install linux-tools

Ini akan menginstalnya untuk rilis Linux terbaru di mesin Anda dan jika Anda mem-boot versi sebelumnya (katakan untuk alasan stabilitas), itu akan salah. Dalam kasus saya diinstal untuk .45 bukan .43 dan saya harus menggunakan perintah berikut untuk menginstalnya:

sudo apt-get install linux-tools-3.2.0.43

Anda dapat menemukan rilis Kernel Anda dengan mengetik: uname -r

Untuk memastikan itu berfungsi dengan benar, Anda dapat mencoba ini: perf record /bin/ls

Kalau-kalau Anda akan menginstal alat Zoom , Anda harus memiliki Perf diinstal untuk dapat menggunakan semua utilitasnya.


18

Untuk mendapatkan versi terbaru dari perf terlepas dari versi kernel (versi perf tidak tergantung pada versi kernel):

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 untuk memeriksa versi saat ini


6

Dalam 14,04, linux-toolspaket tidak ada yang tidak memenuhi syarat:

$ 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

Sebagai gantinya, Anda dapat menginstal salah satu paket yang terdaftar, tergantung pada kernel yang Anda instal. Sebagian besar pengguna akan menginginkannya linux-tools-generic.


4

Saya menginstal Linux 3.17.2 di mesin saya dan mencoba

sudo apt-get install linux-tools-3.17.2

itu menunjukkan bahwa linux-tools tidak ada. Dalam hal ini, unduh versi kernel linux yang diperlukan, buka linux-> tools-> perf:

cd linux/tools/perf

dan kemudian jalankan perintah make:

make

dan kemudian jalankan perintah make install:

make install

dan kemudian reboot. Anda baru saja menginstal perf secara manual.


Reboot tidak perlu. Juga, jika Anda ingin mengkompilasi dari kode sumber; linux-tools-3.17.2 seharusnya tidak perlu
— Heartinpiece

1

Menjalankan dua perintah berikut akan melakukannya!

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

Tidak bekerja Saya menggunakan 12,04. Saya mendapatkan kesalahan perf tidak ditemukan untuk kernel 3.2.0-60. Anda mungkin perlu menginstal linux-tools-3.2.0-60-generic
— Rishi Dua

Ini tidak terlihat berfungsi.
— SmallChess

1

Inilah cara kerjanya untuk saya Di Ubuntu 18.04:

Setelah Command 'perf' not founditu, disarankan untuk menginstal dengan sudo apt install linux-tools-common. Melakukannya dan mencoba untuk menjalankan perfsetelahnya masih menghasilkan:

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

Saya memutuskan untuk sudo apt-get install linux-tools-genericdan ini sudah cukup.

Jika Anda mengalami kesalahan izin saat mencoba menggunakan perfsebagai non-root, lihat di sini:

Jalankan perf tanpa hak root


Saya mendapat peringatan yang sama. Tapi kemudian saya menjalankan perintah yang Anda sarankan dan saya masih mendapatkan peringatan yang sama.
— 6005

linux-tools-oem tampaknya sudah cukup.
— 6005

1
@ 6005 Terima kasih untuk tanggapan, saya tidak tahu mengapa Anda mengalami perilaku yang berbeda.
— Darkonaut

0

Di ubuntu "perf" adalah skrip shell yang memanggil binary perf khusus kernel.

Tapi itu sebenarnya tidak diperlukan, perf itu kompatibel. Hapus saja wrapper dari / usr / bin dan salin salah satu binari perf dari ./lib/linux-tools* ke sana.


-1
sudo apt-get install linux-tools-virtual

jawaban ini tidak berguna tanpa petunjuk tentang pendekatan yang ditargetkan
— cmks
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.