GNU/Linux >> Belajar Linux >  >> Linux

Cara Menentukan Proses Yang Menulis ke Disk di Linux

Di Linux juga dimungkinkan untuk mendapatkan statistik I/O per proses, sehingga Anda dapat melihat dengan tepat siapa yang banyak membaca dan menulis, menggunakan program bernama iotop. iotop harus dimulai dengan pengguna root. Anda dapat menggunakan iotop, misalnya, untuk mempelajari seberapa cepat hard disk Anda dapat membaca dan menulis, lalu tekan tombol q untuk keluar. Baca bagian manual di iotop untuk mempelajari lebih lanjut tentang pintasannya, misalnya, untuk menyortir kolom.

Untuk melihat proses mana yang sedang menulis ke disk kita dapat menggunakan perintah “iotop” untuk mendapatkan informasi tersebut

# iotop

Ini menampilkan output seperti contoh berikut:

Total DISK READ : 0.00 B/s | Total DISK WRITE : 88.95 M/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 88.95 M/s
  TID PRIO USER DISK READ DISK WRITE SWAPIN IO>    COMMAND
27236 be/4 root 0.00 B/s  88.95 M/s  0.00 % 87.91% dd if=/dev/zero of=test.zero bs=1024k count=1000 oflag=direct conv=notrunc
25600 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % less -s
    1 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % systemd --switched-root --system --deserialize 22
    2 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [kthreadd]
    3 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [ksoftirqd/0]
    6 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [kworker/u30:0]
    7 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [rcu_sched]
    8 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [rcu_bh]
    9 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [rcuos/0]
   10 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [rcuob/0]
   11 rt/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [migration/0]
   12 rt/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [watchdog/0]
   13 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [khelper]
   14 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [kdevtmpfs]
   15 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [netns]
   16 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [perf]
   17 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [xenwatch]
   18 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [xenbus]
   20 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [khungtaskd]
   21 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [writeback]
   22 be/5 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [ksmd]
   23 be/7 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [khugepaged]
   24 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [crypto]
   25 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [kintegrityd]
   26 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [bioset]
   27 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [kblockd]
   28 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [md]
   29 be/0 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [devfreq_wq]
   31 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [kswapd0]
   32 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % [fsnotify_mark]
 1058 be/4 root 0.00 B/s  0.00 B/s   0.00 % 0.00 % cupsd -f

Dari kolom yang disajikan di sini, kami mungkin tertarik pada hal berikut:

  • TID :Kolom ini menyediakan PID dari proses yang membuat permintaan I/O. Ini dapat digunakan untuk menyelidiki atau menghentikan program.
  • DISK READ :Kolom ini menggambarkan jumlah byte yang dibaca per detik oleh proses yang terdaftar.
  • DISK MENULIS :Kolom ini merinci jumlah byte yang ditulis per detik oleh proses yang terdaftar.
  • IO :Kolom ini menunjukkan persentase waktu yang dihabiskan proses yang terdaftar untuk mengeluarkan permintaan I/O.
  • PERINTAH :Kolom ini menggambarkan nama proses yang menangani I/O. Jika ini adalah proses master, mungkin juga termasuk sakelar baris perintah.

Dalam contoh di atas kami menjalankan di sesi ssh lain tes dd (dd if=/dev/zero of=test.zero bs=1024k count=1000 oflag=direct conv=notrunc) untuk melihat tindakan W/R yang masuk ke disk .

Jika Anda hanya ingin melihat proses saat ini menulis ke disk, tekan tombol “o” dan Anda akan mendapatkan output seperti:

Total DISK READ : 0.00 B/s | Total DISK WRITE : 86.90 M/s
Actual DISK READ: 0.00 B/s | Actual DISK WRITE: 86.90 M/s
  TID PRIO USER DISK READ DISK WRITE SWAPIN IO>     COMMAND
27239 be/4 root 0.00 B/s  86.90 M/s  0.00 % 89.17 % dd if=/dev/zero of=test.zero bs=1024k count=1000 oflag=direct conv=notrunc

Berikut ini adalah beberapa opsi paling umum yang dapat kita gunakan:

  • Tekan kiri dan tombol panah kanan untuk mengubah pengurutan.
  • Tekan r untuk membalikkan urutan penyortiran.
  • Tekan o hanya untuk melihat proses atau utas yang benar-benar melakukan I/O, alih-alih menampilkan semua proses atau utas.
  • Tekan p hanya menunjukkan proses. Biasanya iotop menampilkan semua utas.
  • Tekan a menampilkan akumulasi I/O alih-alih bandwidth. Dalam mode ini, iotop menunjukkan jumlah proses I/O yang telah dilakukan sejak iotop dimulai.
  • Tekan i untuk mengubah prioritas utas atau utas proses yaitu ionice.
  • Tekan q untuk keluar dari iotop.

Lihat halaman manual untuk informasi lebih lanjut.

# man iotop


Linux
  1. Cara mematikan proses zombie di Linux

  2. Linux – Bagaimana Cara Menentukan Modul Yang Menodai Kernel?

  3. Bagaimana cara mengetahui proses mana yang menggunakan file di Linux?

  1. Cara mempartisi disk di Linux

  2. Cara menginstal vtop di Linux

  3. Bagaimana saya bisa menentukan proses apa yang membuka file di Linux?

  1. Bagaimana Cara Menentukan Proses Yang Membuat File??

  2. Bagaimana saya bisa tahu di Linux proses mana yang mengirim sinyal ke proses saya

  3. Tentukan di grup mana proses berjalan berada?