procinfo - แสดงสถิติระบบจาก /proc Filesystem
ระบบไฟล์ proc คือระบบไฟล์เสมือนที่มีไฟล์ที่เก็บข้อมูลเกี่ยวกับกระบวนการและข้อมูลระบบอื่นๆ มันถูกแมปกับไดเร็กทอรี /proc
และเมานต์ตอนบูต โปรแกรมจำนวนหนึ่งดึงข้อมูลจากระบบไฟล์ /proc ประมวลผลและจัดเตรียมให้พร้อมใช้งานเพื่อวัตถุประสงค์ต่างๆ
Procinfo เป็นโปรแกรมอรรถประโยชน์บรรทัดคำสั่งง่ายๆ สำหรับการดูข้อมูลระบบที่รวบรวมจากไดเร็กทอรี /proc และพิมพ์ออกมาในรูปแบบที่สวยงามบนอุปกรณ์เอาท์พุตมาตรฐาน ในบทความนี้ เราจะอธิบายตัวอย่างคำสั่ง procinfo จำนวนหนึ่งใน Linux
ใน Linux ส่วนใหญ่ คำสั่ง procinfo ควรติดตั้งไว้ล่วงหน้า หากคุณยังไม่มี ให้ติดตั้งโดยใช้คำสั่งต่อไปนี้
sudo apt install procinfo #Debian/Ubuntu
sudo yum install procinfo #CentOS/RHEL
sudo dnf install procinfo #Fedora 22+
ตัวอย่างที่ง่ายที่สุดคือการรัน procinfo โดยไม่มีอาร์กิวเมนต์ใดๆ ดังที่แสดง
procinfo
Memory: Total Used Free Buffers
RAM: 8069036 7693288 375748 301356
Swap: 3906556 0 3906556
Bootup: Mon Jun 4 11:09:45 2018 Load average: 0.35 0.84 1.01 1/1021 15406
user : 01:09:12.02 13.4% page in : 2434469
nice : 00:02:12.37 0.4% page out: 2162544
system: 00:15:17.34 3.0% page act: 2395528
IOwait: 00:39:04.09 7.6% page dea: 3424
hw irq: 00:00:00.00 0.0% page flt: 20783328
sw irq: 00:00:29.07 0.1% swap in : 0
idle : 06:30:26.88 75.6% swap out: 0
uptime: 02:10:11.66 context : 51698643
irq 0: 21 2-edge timer irq 42: 0 466944-edge PCIe
irq 1: 3823 1-edge i8042 irq 43: 193892 327680-edge xhci_
irq 8: 1 8-edge rtc0 irq 44: 191759 512000-edge 0000:
irq 9: 2175 9-fasteoi acpi irq 45: 1021515 524288-edge enp1s
irq 12: 6865 12-edge i8042 irq 46: 541926 32768-edge i915
irq 19: 0 19-fasteoi rtl_pc irq 47: 14 360448-edge mei_m
irq 23: 33 23-fasteoi ehci_h irq 48: 344 442368-edge snd_h
irq 40: 0 458752-edge PCIe irq 49: 749 49152-edge snd_hd
irq 41: 0 464896-edge PCIe
loop0 90r 0 loop4 14r 0
loop1 159r 0 loop5 7945r 0
loop2 214r 0 loop6 309r 0
loop3 79r 0 sda 112544r 70687w
enp1s0 TX 58.30MiB RX 883.00MiB vmnet8 TX 0.00B RX 0.00B
lo TX 853.65KiB RX 853.65KiB wlp2s0 TX 0.00B RX 0.00B
vmnet1 TX 0.00B RX 0.00B
หากต้องการพิมพ์ สถิติหน่วยความจำ ในรูปแบบที่มนุษย์อ่านได้ (KiB, MiB, GiB) แทนที่จะเป็น Kbytes เริ่มต้น ให้ใช้แฟล็ก -H
procinfo -H
Memory: Total Used Free Buffers
RAM: 7.70GiB 7.36GiB 344.27MiB 294.38MiB
Swap: 3.73GiB 0.00B 3.73GiB
Bootup: Mon Jun 4 11:09:45 2018 Load average: 0.61 0.84 1.00 2/1017 15439
user : 01:09:21.25 13.3% page in : 2434613
nice : 00:02:12.43 0.4% page out: 2223808
system: 00:15:19.82 2.9% page act: 2416184
IOwait: 00:39:08.21 7.5% page dea: 3424
hw irq: 00:00:00.00 0.0% page flt: 20891258
sw irq: 00:00:29.08 0.1% swap in : 0
idle : 06:33:48.38 75.7% swap out: 0
uptime: 02:11:06.85 context : 51916194
irq 0: 21 2-edge timer irq 42: 0 466944-edge PCIe
irq 1: 3985 1-edge i8042 irq 43: 196957 327680-edge xhci_
irq 8: 1 8-edge rtc0 irq 44: 192411 512000-edge 0000:
irq 9: 2196 9-fasteoi acpi irq 45: 1021900 524288-edge enp1s
irq 12: 6865 12-edge i8042 irq 46: 543742 32768-edge i915
irq 19: 0 19-fasteoi rtl_pc irq 47: 14 360448-edge mei_m
irq 23: 33 23-fasteoi ehci_h irq 48: 344 442368-edge snd_h
irq 40: 0 458752-edge PCIe irq 49: 749 49152-edge snd_hd
irq 41: 0 464896-edge PCIe
loop0 90r 0 loop4 14r 0
loop1 159r 0 loop5 7945r 0
loop2 214r 0 loop6 309r 0
loop3 79r 0 sda 112568r 71267w
enp1s0 TX 58.33MiB RX 883.21MiB vmnet8 TX 0.00B RX 0.00B
lo TX 854.18KiB RX 854.18KiB wlp2s0 TX 0.00B RX 0.00B
vmnet1 TX 0.00B RX 0.00B
แฟล็ก -d อนุญาตให้แสดงสถิติแบบต่อวินาที แทนที่จะเป็นค่าทั้งหมด
procinfo -d
หากต้องการแสดงสถิติเป็นผลรวม ให้ใช้แฟล็ก -D
ดังต่อไปนี้
procinfo -D
คุณสามารถรับการอัปเดตอย่างต่อเนื่องบนหน้าจอและหยุดการอัปเดตชั่วคราวเป็นเวลา N จำนวนวินาที (เช่น 5 วินาทีในคำสั่งนี้) โดยใช้แฟล็ก -n
แล้วกด q
เพื่อออกในโหมดนี้
procinfo -n5 -H
หากต้องการรายงานหน่วยความจำว่าง "ของจริง " ซึ่งคล้ายกับที่แสดงโดยยูทิลิตี้ฟรี ให้ใช้ตัวเลือก -r
procinfo -r
หากต้องการแสดงจำนวนไบต์แทนจำนวนคำขอ I/O ให้ใช้ตัวเลือก -b
procinfo -b
Procinfo ทำงานแบบโต้ตอบได้เช่นกัน เมื่อทำงานแบบเต็มหน้าจอ ซึ่งจะทำให้คุณสามารถใช้ d, D, r และ < ปุ่มb ซึ่งมีฟังก์ชันสอดคล้องกับค่าสถานะบรรทัดคำสั่งที่มีชื่อเดียวกันตามที่อธิบายไว้ข้างต้น
สำหรับข้อมูลเพิ่มเติม โปรดดูหน้าคู่มือ procinfo
man procinfo
ในบทความนี้ เราได้อธิบายตัวอย่างคำสั่ง procinfo หลายตัวอย่างแล้ว หากคุณมีข้อสงสัยใดๆ โปรดใช้แบบฟอร์มคำติชมด้านล่างเพื่อติดต่อเรา