“Perf” izleme aracı nasıl kurulur?


Yanıtlar:



59

Ubuntu 14.04'te üç paket kurmak zorunda kaldım:

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

5
Bunu denediğimde, sadece kullanmak sudo apt-get install linux-tools-common linux-tools-generic(çekirdeğin sürümüne bağlı olan kısmı atlamak) yeterliydi.
Martin R.

4
@ Martin-R linux-tools-generic, her zaman en güncel çekirdek sürümüne yönelik araçları işaret eder. Daha eski bir çekirdeği çalıştırırken (örn. Birkaç ay çalışma süresi olan bir sunucu), yeni çekirdeği yeniden başlatmadan mükemmellik istiyorsanız, bu çekirdeğe eşleştirilen araçları (dolayısıyla uname -rkabuk genişletme) açıkça yüklemeniz gerekir .
notpeter

sudo apt-get güncelleme sudo apt-get -y install linux-tools-common linux-tools-genel linux- uname -r
tools-

25

Doğru Çekirdek sürümü için bu aracı yüklediğinizden emin olun. Eğer sadece yazarsanız:

sudo apt-get install linux-tools

Makinenizdeki en son Linux sürümü için kuracak ve önceki bir sürümü başlattığınızda (kararlılık nedeniyle) söyleyecektir. Benim durumumda, .43 yerine .45 yükledim ve yüklemek için aşağıdaki komutu kullanmak zorunda kaldım:

sudo apt-get install linux-tools-3.2.0.43

Çekirdek sürümünüzü aşağıdakileri yazarak bulabilirsiniz: uname -r

Doğru çalıştığından emin olmak için şunu deneyebilirsiniz: perf record /bin/ls

Zoom aracını yükleyecekseniz , tüm yardımcı programlarını kullanabilmeniz için Perf'in yüklü olması gerekir.


18

Çekirdek sürümüne bakılmaksızın perf'in en son sürümünü almak için (perf sürümü çekirdek sürümünden bağımsızdır):

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 Geçerli sürümü kontrol etmek için


6

14.04'te linux-toolspaket niteliksiz değildir:

$ 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

Bunun yerine, yüklediğiniz çekirdeğe bağlı olarak listelenen paketlerden birini yükleyebilirsiniz. Çoğu kullanıcı isteyecektir linux-tools-generic.


4

Makineme Linux 3.17.2 yükledim ve denedim

sudo apt-get install linux-tools-3.17.2

linux araçlarının mevcut olmadığını gösterdi. Bu durumda, gerekli linux çekirdek sürümünü indirin, linux-> tools-> perf bölümüne gidin:

cd linux/tools/perf

ve sonra make komutunu çalıştırın:

make

ve sonra make install komutunu çalıştırın:

make install

ve sonra yeniden başlatın. Sadece perf'i elle kurdun.


Yeniden başlatma gerekli değildir. Ayrıca, kaynak koddan derleyecekseniz; linux-tools-3.17.2 gerekli olmamalıdır
Heartinpiece

1

Aşağıdaki iki komutu çalıştırmak onu yapacak!

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

Çalışmıyor 12.04 kullanıyorum. Çekirdek 3.2.0-60 için bulunmayan perf hatayı alıyorum. Linux-tools-3.2.0-60-generic
Rishi Dua

Bu işe görünmüyor.
SmallChess,

1

İşte benim için nasıl çalıştığını Ubuntu 18.04 tarihinde:

Ardından Command 'perf' not found, yüklemeniz önerilir sudo apt install linux-tools-common. Bunu yapmak ve perfdaha sonra çalışmaya çalışmak hala sonuçlandı:

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

Karar verdim sudo apt-get install linux-tools-genericve bu yeterliydi.

perfKök olmayan olarak kullanmaya çalışırken izin hatasıyla karşılaşırsanız , buraya bakın:

Kök hakları olmadan perf çalıştır


Ben de aynı uyarıyı aldım. Ama sonra önerdiğin emri yerine getirdim ve hala aynı uyarıyı alıyorum.
6005

linux-tools-oem yetmiş gibi görünüyor.
6005

1
@ 6005 Geri bildirim için Thx, neden farklı bir davranışla karşılaştığınız hakkında hiçbir fikrim yok.
Darkonaut

0

Ubuntu'da "perf" bir çekirdeğe özgü perf binary adında bir kabuk betiğidir.

Ama aslında gerekli değil, perf uyumludur. Sadece / usr / bin 'den sarmalayıcıyı kaldırın ve ./lib/linux-tools*' dan perf ikili dosyalarının herhangi birini kopyalayın.


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

Bu cevap, hedeflenen yaklaşımın hiçbir ipucu olmadan işe yaramaz
cmks
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.