Bagaimana cara memantau aktivitas disk pada drive tertentu?

35

Saya ingin menonton aktivitas disk di hard drive eksternal USB saya. Saya tahu bahwa saya dapat menggunakannya iotopuntuk memonitor disk I / O untuk setiap proses yang berjalan, tetapi apakah ada cara untuk mendapatkan ukuran per sistem file?

ændrük
sumber

Jawaban:

19

dstat lebih baik daripada iostat untuk memonitor aktivitas disk secara ketat.

Saya menjalankan perintah berikut sambil memindahkan file dari satu harddisk ke harddisk lain

dstat -D sda,sdc

untuk info lebih lanjut, lihat halaman ini

https://help.ubuntu.com/community/DiskPerformance

Mathieu J.
sumber
1
Sangat bagus. Namun dengan cara ini saya tidak bisa melihat proses mana yang menyebabkan IO. Jadi saya terjebak dengan melihat proses mana (dengan iotop) atau perangkat mana (dengan dstat), tetapi tidak keduanya.
jlh
Saya berharap kita juga dapat membatasi pemantauannya pada proses tertentu
matt
23

Saya tidak terampil dalam bidang ini, tetapi iostat muncul di benak saya. Anda dapat menginstalnya dengan paket sysstat . Semoga berhasil!

Leon Nardella
sumber
6
contoh penggunaan: iostat -d 10 /dev/sdaakan memberi Anda pemanfaatan io dalam interval 10 detik /dev/sda. Saya hampir menggunakan watch iostat -d /dev/sdaopsi intervalnya. Sunting:
hajar
1
Saya baru saja membaca bahwa set nilai pertama yang dilaporkan adalah statistik dari apa yang telah terjadi sejak startup sistem, jadi ternyata tidak masuk akal untuk digunakan watch. Pelaporan berkelanjutan dengan sesuatu seperti iostat -dk 10mengembalikan angka yang lebih bermakna.
ændrük
Hmm ... Saya hanya tidak suka itu mengisi seluruh scrollback saya.
aperson
Buka engkol terminal baru dan lakukan
adampski
10

Menggunakan iostatdari sysstatpaket memberikan snapshot tunggal hasil sejak startup. Penggunaan parameter interval akan menambahkan hasil hanya untuk interval terakhir ke output. Contoh, iostat 10pertama-tama akan menampilkan nilai "sejak boot" kemudian terus menambahkan statistik detik 10 terakhir ke output, setiap 10 detik. Sertakan -yopsi untuk menghilangkan tampilan statistik pertama sejak booting tetapi pahami bahwa perintah tersebut akan tampak menganggur untuk interval yang ditentukan saat sistem mengumpulkan snapshot pertama.

Saya telah menemukan ini paling efektif ketika dikombinasikan dengan watchperintah dan menunjukkan hanya mengumpulkan untuk interval statistik tunggal. Misalnya: watch -t -n 0.1 iostat -d -t -y 5 1 memberikan refresh setiap 5,1 detik statistik aktivitas selama 5 detik terakhir. Untuk memecah opsi dan parameter ...

  • Yang pertama -tmemberitahu arloji untuk menghilangkan header. Ini untuk menghindari kebingungan bahwa jika tidak header akan menyertakan "Setiap 0,1" yang tidak mewakili snapshot data.
  • Jam -n 0.1tangan memberitahu untuk menjalankan perintah berikut setiap 0,1 detik. Ini adalah interval terkecil untuk menonton (procps-ng 3.3.9) tetapi jangan khawatir, itu sebenarnya tidak menjalankan perintah setiap 0,1 detik. Ini akan menjalankan perintah 0,1 detik setelah instance sebelumnya selesai.
  • The -dmemberitahu iostat untuk hanya menampilkan pemanfaatan perangkat, relevan karena pertanyaannya adalah mengenai aktivitas disk. Sebagai alternatif untuk memonitor disk tertentu, nama perangkat dapat dimasukkan sebelum parameter interval.
  • -tSwitch kedua memberitahu iostat untuk memasukkan waktu refresh dalam statistik. Ini berguna karena penghilangan sebelumnya dari header jam tangan menghapus tampilan waktu yang seharusnya ada di sana.
  • The -ysaklar menghilangkan layar pertama "sejak boot" statistik dari tampilan interval. Tanpa ini hasilnya akan menjadi tampilan statistik sejak pembaruan boot pada interval perintah arloji.
  • The 5 1adalah parameter selang iostat. Dalam hal ini, ambil 5 detik statistik sekali (angka 1). Karena saklar -y digunakan, ini hanya akan menampilkan satu layar data.

Diperlukan waktu 5 detik untuk iostat untuk mengumpulkan data, kemudian akan ditampilkan di jam tangan, dan 0,1 detik kemudian jam tangan akan memicu perintah iostat lagi. 5 detik kemudian data baru akan menggantikan yang lama, arloji akan menunggu 0,1 detik, cuci, bilas, ulangi ...

cpow
sumber
9

Coba dengan nmon

sudo apt-get install nmon

Mencoba:

nmon

Output Seperti di bawah ini:

masukkan deskripsi gambar di sini

Tekan d = Disk Tekan c = CPU Tekan r = RAM, Tekan v = Memori Virtual, Status Kernal tekan K, Tekan N = jaringan dan Tekan q atau x untuk keluar

Ramesh Chand
sumber