Perintah Vmstat Linux

Perintah Vmstat Linux



Dalam panduan ini, kami akan menunjukkan pelbagai cara menggunakan arahan 'vmstat' dalam Linux.

Prasyarat:

Untuk melaksanakan langkah-langkah yang ditunjukkan dalam panduan ini, anda memerlukan komponen berikut:

  • Sistem Linux yang dikonfigurasikan dengan betul. Untuk tujuan ujian, pertimbangkan untuk menggunakan VM Linux .
  • Akses kepada a pengguna bukan root dengan keistimewaan sudo
  • Pemahaman asas antara muka baris arahan

Memori Maya dalam Linux

Memori fizikal, juga dirujuk sebagai RAM, adalah terhingga dalam jumlah. Kernel bertanggungjawab untuk mengedarkan ruang ini kepada semua program yang sedang berjalan. Semua program yang sedang berjalan (termasuk OS) berada dalam RAM.







Walau bagaimanapun, jika permintaan untuk memori lebih tinggi daripada memori yang tersedia, ia hanya akan merosakkan sistem (atau program akan meminta lebih banyak ruang memori). Dalam kebanyakan situasi, itu adalah hasil yang tidak diingini. Di sinilah ingatan maya masuk.



Memori maya merujuk kepada ruang cakera khusus pada HDD/SSD anda yang boleh bertindak sebagai memori tambahan dalam situasi yang teruk. Kerana ia bertindak sebagai ruang RAM (tetapi tidak sebenarnya), ia dianggap sebagai 'maya'. Dalam sistem UNIX/Linux, ruang ini dirujuk sebagai ruang swap.



Kernel Linux mengalihkan blok memori ke ruang swap dan mendapatkannya kembali ke RAM jika perlu.





Prestasi memori maya pasti lebih perlahan daripada memori fizikal dan berkadar terus dengan prestasi peranti storan. Walau bagaimanapun, dalam konfigurasi perkakasan tertentu (menggunakan NVMe SSD, sebagai contoh), prestasi mungkin bersamaan dengan RAM.

Perintah Vmstat

Perintah 'vmstat' ialah alat pemantauan yang melaporkan pelbagai maklumat tentang memori maya. Ia tersedia pada semua sistem Linux sebagai sebahagian daripada pakej 'sysstat'.



Struktur arahan 'vmstat' adalah seperti berikut:

$ vmstat < pilihan > < kelewatan > < kira >

Penggunaan Asas

Jika ia dijalankan tanpa sebarang parameter, 'vmstat' mencetak maklumat sistem sejak but terakhir:

$ vmstat

Output disusun dalam enam segmen:

  • proses : Statistik proses yang sedang berjalan
    • r : Bilangan proses aktif
    • b : Bilangan proses tidur
  • ingatan : Statistik penggunaan memori
    • swpd : Jumlah jumlah memori maya (ruang pertukaran)
    • percuma : Ruang swap yang tersedia
    • buff : Jumlah ruang swap yang digunakan sebagai memori penimbal sementara
    • cache : Jumlah memori cache
  • bertukar-tukar : Statistik tentang ruang swap
    • Yeah : Kadar pertukaran masuk
    • jadi : Kadar pertukaran keluar
  • ini : Perangkaan I/O
    • dengan : Bilangan blok yang diterima daripada peranti blok
    • jadilah : Bilangan blok yang dihantar untuk menyekat peranti
  • sistem : Statistik tentang penjadualan
    • dalam : Kiraan gangguan sistem
    • cs : Kadar suis konteks
  • CPU : Pelbagai statistik CPU
    • kami : CPU menghabiskan masa pada proses bukan kernel
    • dan : CPU menghabiskan masa pada proses kernel
    • ID : CPU menghabiskan masa melahu
    • daripada : CPU menghabiskan masa menunggu operasi I/O selesai
    • st : Masa CPU yang digunakan oleh mesin maya

Menukar Unit Paparan

Secara lalai, 'vmstat' melaporkan nilai memori dalam kilobait. Untuk menukar unit, gunakan “ -S ' bendera:

$ vmstat -S < hujah >

Di sini, 'vmstat' mencetak nilai dalam megabait.

Terdapat beberapa unit memori yang tersedia:

  • M : 1048576 bait (2^20 bait)
  • m : 1000000 bait (1000 kilobait)
  • K : 1024 bait (1 megabait)
  • k : 1000 bait (1 kilobait)

Kemas Kini Statistik Berterusan

Secara lalai, 'vmstat' mencetak laporan sekali. Walau bagaimanapun, kami boleh mengarahkan 'vmstat' untuk menyediakan laporan berterusan pada selang masa tertentu (dalam saat).

Struktur arahan adalah seperti berikut:

$ vmstat < kelewatan >

Sebagai contoh, untuk mendapatkan statistik yang dikemas kini setiap 2 saat, arahannya adalah seperti berikut:

$ vmstat 2

Output tidak akan berhenti melainkan ia ditamatkan secara manual menggunakan 'Ctrl + C'.

Sebagai alternatif, kami boleh menentukan 'vmstat' untuk menyediakan statistik untuk beberapa kali tertentu:

$ vmstat < kelewatan > < kira >

Sebagai contoh, untuk mendapatkan statistik yang dikemas kini setiap 2 saat selama 5 kali, arahannya kelihatan seperti ini:

$ vmstat 2 5

Ingatan Aktif dan Tidak Aktif

Memori aktif merujuk kepada ruang memori yang sedang digunakan oleh proses. Sebaliknya, ingatan tidak aktif merujuk kepada ruang memori yang diperuntukkan kepada proses yang tidak lagi berjalan.

Menggunakan 'vmstat', kita boleh menyemak jumlah ingatan aktif dan tidak aktif yang digunakan:

$ vmstat -a

Di sini, lajur 'buff' dan 'cache' masing-masing digantikan dengan lajur 'tidak aktif' dan 'aktif'.

Ingatan dan Penjadualan

Untuk mendapatkan laporan yang lebih terperinci tentang memori dan penjadualan, gunakan arahan berikut:

$ vmstat -s

di sini:

  • Bahagian 1: Bahagian ini memperkatakan maklumat sistem asas seperti jumlah memori fizikal, memori aktif/tidak aktif, memori percuma/penampan/cache, dsb.
  • Bahagian 2: Pelbagai statistik CPU
    • Kutu CPU yang tidak bagus : Berapa kali proses keutamaan tinggi menggunakan CPU.
    • CPU yang bagus : Bilangan kali proses keutamaan yang lebih rendah menggunakan CPU.
    • CPU sistem berdetik : Bilangan kali proses kernel menggunakan CPU.
    • CPU terbiar berdetik : Bilangan kali CPU berdiri melahu.
    • IO-tunggu CPU berdetik : Bilangan kali CPU menunggu pengurusan I/O.
    • IRQ : Bilangan kali CPU menerima permintaan gangguan.
    • softirq : Bilangan kali CPU menerima permintaan gangguan perisian.
    • kutu CPU yang dicuri : Bilangan kali VM mencuri masa CPU.
  • Bahagian 3: Statistik paging memori
  • Bahagian 4: Kaunter acara

Garpu sejak Boot

Forks merujuk kepada proses yang dihasilkan oleh proses sedia ada. Untuk mendapatkan statistik kiraan garpu, jalankan arahan berikut:

$ vmstat -f

Statistik Cakera dan Pembahagian

Perintah 'vmstat' juga boleh memberikan maklumat tentang aktiviti cakera. Untuk mendapatkan ringkasan pantas aktiviti cakera, jalankan arahan berikut:

$ vmstat -D

Untuk mendapatkan laporan aktiviti cakera yang lebih terperinci (termasuk statistik baca/tulis), gunakan arahan berikut:

$ vmstat -d

di sini:

  • Membaca
    • jumlah : Jumlah kiraan bacaan cakera
    • digabungkan : Jumlah kiraan bacaan kumpulan
    • sektor : Jumlah bilangan sektor yang dibaca
    • Cik : Jumlah masa untuk membaca data daripada cakera (dalam milisaat)
  • Menulis
    • jumlah : Jumlah kiraan tulis cakera
    • digabungkan : Jumlah bilangan penulisan kumpulan
    • sektor : Jumlah bilangan sektor yang ditulis
    • Cik : Jumlah masa untuk menulis pada cakera (dalam milisaat)
  • IO
    • letak : Jumlah cakera semasa membaca/menulis
    • sec : Jumlah masa yang dibelanjakan dalam operasi membaca/menulis yang berterusan (dalam saat)

Perintah 'vmstat' juga boleh menjana laporan untuk partition cakera tertentu. Untuk mendapatkan laporan partition, gunakan struktur arahan berikut:

$ vmstat -hlm < pengecam_sekatan >

Statistik Papak

Peruntukan papak direka bentuk untuk menjadi mekanisme yang cekap untuk peruntukan memori objek. Berbanding dengan mekanisme sebelumnya, peruntukan papak menawarkan pengurangan pemecahan memori (disebabkan oleh peruntukan memori dan deallocation).

Untuk menyemak statistik papak sistem, gunakan arahan 'vmstat' berikut:

$ sudo vmstat -m

Ambil perhatian bahawa ia memerlukan kebenaran akar untuk melihat statistik.

di sini:

  • Cache : Nama data cache
  • pada satu : Bilangan objek yang aktif dalam cache Num
  • Jumlah : Jumlah kiraan objek dalam cache tertentu
  • Saiz : Saiz objek cache
  • muka surat : Kiraan halaman memori yang mengandungi objek cache

Kesimpulan

Dalam panduan ini, kami mempamerkan pelbagai cara menggunakan arahan 'vmstat'. Selain memori maya, 'vmstat' juga boleh melaporkan statistik cakera, garpu, papak dan banyak lagi.

Berminat untuk mengetahui tentang alat pemantauan sistem yang lain? Ketahui lebih lanjut tentang htop , bunuh , ps , dan lain-lain.

Selamat berkomputer!