การจัดการกระบวนการ Linux/Unix: ps, kill, top, df, ฟรี, คำสั่งที่ดี

กระบวนการคืออะไร?

อินสแตนซ์ของโปรแกรมเรียกว่ากระบวนการ พูดง่ายๆ ก็คือ คำสั่งใดๆ ที่คุณให้กับเครื่อง Linux ของคุณจะเป็นการเริ่มต้นกระบวนการใหม่

กระบวนการคืออะไร

การมีหลายกระบวนการสำหรับโปรแกรมเดียวกันนั้นเป็นไปได้

ประเภทของกระบวนการ:

  • กระบวนการเบื้องหน้า: พวกมันทำงานบนหน้าจอและต้องการข้อมูลจากผู้ใช้ เช่น โปรแกรมออฟฟิศ
  • กระบวนการเบื้องหลัง: โดยจะทำงานอยู่เบื้องหลังและมักไม่จำเป็นต้องป้อนข้อมูลจากผู้ใช้ ตัวอย่างเช่น โปรแกรมป้องกันไวรัส

คลิก Good Farm Animal Welfare Awards หากไม่สามารถเข้าถึงวิดีโอได้

เรียกใช้กระบวนการเบื้องหน้า

หากต้องการเริ่มกระบวนการเบื้องหน้า คุณสามารถเรียกใช้จากแดชบอร์ดหรือเรียกใช้จากเทอร์มินัลก็ได้

เมื่อใช้ Terminal คุณจะต้องรอจนกว่ากระบวนการเบื้องหน้าจะทำงาน

เรียกใช้กระบวนการเบื้องหน้า

เรียกใช้กระบวนการเบื้องหลัง

หากคุณเริ่มโปรแกรม/กระบวนการเบื้องหน้าจากเทอร์มินัล คุณจะไม่สามารถทำงานบนเทอร์มินัลได้จนกว่าโปรแกรมจะเริ่มทำงาน

งานที่ใช้ข้อมูลจำนวนมากต้องใช้พลังประมวลผลมากและอาจใช้เวลานานถึงหลายชั่วโมงจึงจะเสร็จสมบูรณ์ คุณคงไม่อยากให้เครื่องของคุณต้องหยุดทำงานเป็นเวลานานขนาดนั้น

เพื่อหลีกเลี่ยงสถานการณ์ดังกล่าว คุณสามารถรันโปรแกรมและส่งมันไปที่พื้นหลังเพื่อให้เทอร์มินัลยังคงพร้อมใช้งานสำหรับคุณ มาเรียนรู้วิธีการทำเช่นนี้กันเถอะ –

เรียกใช้กระบวนการเบื้องหลัง

Fg

คุณสามารถใช้คำสั่ง “fg” เพื่อดำเนินโปรแกรมที่หยุดทำงานและนำไปไว้เบื้องหน้าต่อไป

ไวยากรณ์อย่างง่ายสำหรับยูทิลิตี้นี้คือ:

fg jobname

ตัวอย่าง

  1. เปิดตัวเครื่องเล่นเพลง 'banshee'
  2. หยุดด้วยคำสั่ง 'ctrl +z'
  3. ดำเนินการต่อด้วยยูทิลิตี้ 'fg'

คำสั่งเอฟจี

มาดูคำสั่งสำคัญอื่นๆ ในการจัดการกระบวนการกัน

Top

ยูทิลิตี้นี้แจ้งให้ผู้ใช้ทราบเกี่ยวกับกระบวนการทำงานทั้งหมดบนเครื่อง Linux

คำสั่งสูงสุด

กด 'q' บนแป้นพิมพ์เพื่อย้ายออกจากหน้าจอกระบวนการ

คำศัพท์ดังต่อไปนี้:

สนาม Descriptไอออน 1 ตัวอย่าง 2 ตัวอย่าง
PID ID กระบวนการของแต่ละงาน 1525 961
ผู้ใช้งาน ชื่อผู้ใช้ของเจ้าของงาน หน้าแรก ราก
PR ลำดับความสำคัญ

สามารถเป็น 20(สูงสุด) หรือ -20(ต่ำสุด)

20 20
NI คุณค่าที่ดีของงาน 0 0
วีอาร์ที หน่วยความจำเสมือนที่ใช้ (kb) 1775 75972
RES หน่วยความจำกายภาพที่ใช้ (kb) 100 51
SHR หน่วยความจำที่ใช้ร่วมกันที่ใช้ (kb) 28 7952
S

สถานะ

มีห้าประเภท:

'D' = การนอนหลับอย่างต่อเนื่อง

'ร' = กำลังวิ่ง

'S' = นอนหลับ

'T' = ติดตามหรือหยุด

'Z' = ซอมบี้

S R
% ของ CPU % ของเวลา CPU 1.7 1.0
%บันทึก หน่วยความจำกายภาพที่ใช้ 10 5.1
เวลา+ เวลา CPU ทั้งหมด 5:05.34 2:23.42
คำสั่ง ชื่อคำสั่ง Photoshop.exe Xorg

PS

คำสั่งนี้ย่อมาจาก 'สถานะกระบวนการ' คล้ายกับ “ตัวจัดการงาน” ที่ป๊อปอัปในไฟล์ Windows เครื่องเมื่อเราใช้ Ctrl+Alt+Del คำสั่งนี้จะคล้ายกับคำสั่ง 'top' แต่ข้อมูลที่แสดงจะแตกต่างกัน

หากต้องการตรวจสอบกระบวนการทั้งหมดที่ทำงานภายใต้ผู้ใช้ ให้ใช้คำสั่ง –

ps ux

คำสั่ง PS

คุณยังสามารถตรวจสอบสถานะกระบวนการของกระบวนการเดียวได้ ใช้ไวยากรณ์ –

ps PID 

คำสั่ง PS

ฆ่า

คำสั่งนี้ ยุติกระบวนการที่กำลังทำงานอยู่ บนเครื่อง Linux

หากต้องการใช้ยูทิลิตี้เหล่านี้ คุณจำเป็นต้องทราบ PID (รหัสกระบวนการ) ของกระบวนการที่คุณต้องการฆ่า

ไวยากรณ์ –

kill PID

หากต้องการค้นหา PID ของกระบวนการ เพียงพิมพ์

pidof Process name

เราลองมาดูด้วยตัวอย่างกัน

ฆ่าคำสั่ง

NICE

Linux สามารถรันกระบวนการได้จำนวนมากในแต่ละครั้ง ซึ่งสามารถชะลอความเร็วของกระบวนการที่มีลำดับความสำคัญสูงบางกระบวนการ และส่งผลให้ประสิทธิภาพลดลง

เพื่อหลีกเลี่ยงปัญหานี้ คุณสามารถบอกให้เครื่องจักรของคุณจัดลำดับความสำคัญของกระบวนการตามความต้องการของคุณได้

ลำดับความสำคัญนี้เรียกว่า Niceness ใน Linux และมีค่าระหว่าง -20 ถึง 19 ยิ่งดัชนี Niceness ต่ำเท่าใด ลำดับความสำคัญที่กำหนดให้กับงานก็จะยิ่งสูงขึ้นเท่านั้น

ค่าเริ่มต้นของกระบวนการทั้งหมดคือ 0

หากต้องการเริ่มกระบวนการด้วยค่าความน่ารักอื่นนอกเหนือจากค่าเริ่มต้น ให้ใช้รูปแบบต่อไปนี้

nice -n 'Nice value' process name

คำสั่งที่ดี

หากมีกระบวนการบางอย่างที่ทำงานอยู่บนระบบอยู่แล้ว คุณสามารถ 'รับ' ค่าของกระบวนการนั้นได้โดยใช้ไวยากรณ์

renice 'nice value' -p 'PID'

หากต้องการเปลี่ยน Niceness คุณสามารถใช้คำสั่ง 'top' เพื่อกำหนด PID (รหัสกระบวนการ) และค่า Nice Later ใช้คำสั่ง renice เพื่อเปลี่ยนค่า

ให้เราเข้าใจสิ่งนี้ด้วยตัวอย่าง

คำสั่งที่ดี

DF

ยูทิลิตี้นี้รายงานพื้นที่ว่างในดิสก์ (ฮาร์ดดิสก์) ในระบบไฟล์ทั้งหมด

คำสั่ง ดีเอฟ

หากคุณต้องการข้อมูลข้างต้นในรูปแบบที่สามารถอ่านได้ ให้ใช้คำสั่ง

'df -h' 

คำสั่ง ดีเอฟ

ฟรี

คำสั่งนี้แสดงหน่วยความจำที่ว่างและใช้งานแล้ว (RAM) บนระบบ Linux

คำสั่งฟรี

คุณสามารถใช้ข้อโต้แย้งได้

free -m เพื่อแสดงเอาต์พุตเป็น MB

free -g เพื่อแสดงเอาต์พุตเป็น GB

สรุป:

  • โปรแกรมที่ทำงานอยู่หรือคำสั่งใดๆ ที่มอบให้กับระบบ Linux เรียกว่ากระบวนการ
  • กระบวนการสามารถทำงานในเบื้องหน้าหรือเบื้องหลังได้
  • ดัชนีลำดับความสำคัญของกระบวนการเรียกว่า Nice ใน Linux ค่าเริ่มต้นคือ 0 และอาจแตกต่างกันได้ระหว่าง 20 ถึง -19
  • ยิ่งดัชนี Niceness ต่ำ ลำดับความสำคัญของงานนั้นก็จะยิ่งสูงขึ้น
คำสั่ง Descriptไอออน
bg เพื่อส่งกระบวนการไปที่พื้นหลัง
fg เพื่อรันกระบวนการที่หยุดทำงานในเบื้องหน้า
ด้านบน รายละเอียดเกี่ยวกับกระบวนการที่ใช้งานอยู่ทั้งหมด
ps ระบุสถานะของกระบวนการที่ทำงานให้กับผู้ใช้
ปล.PID ให้สถานะของกระบวนการเฉพาะ
ปิด ให้รหัสกระบวนการ (PID) ของกระบวนการ
ฆ่า PID ฆ่ากระบวนการ
ดี เริ่มต้นกระบวนการตามลำดับความสำคัญที่กำหนด
เรนิซ เปลี่ยนลำดับความสำคัญของกระบวนการที่กำลังทำงานอยู่
df ให้พื้นที่ว่างบนฮาร์ดดิสก์ในระบบของคุณ
ฟรี ให้ RAM ฟรีในระบบของคุณ