การตรวจสอบกระบวนการเทียบเท่ากับ Linux?


26

มี Unix / Linux เทียบเท่ากับProcess Monitorไม่ว่าจะเป็น GUI หรือ CUI?

ถ้ามันสร้างความแตกต่างฉันกำลังดู Ubuntu แต่ถ้ามันมีระบบที่เทียบเท่ากับระบบอื่น (Mac, Linux รุ่นอื่น ๆ เช่น Fedora ฯลฯ ) การรู้ว่าสิ่งเหล่านั้นจะมีประโยชน์เช่นกัน

แก้ไข:

การตรวจสอบกระบวนการสำหรับการตรวจสอบการเรียกระบบ (เช่นการสร้างไฟล์หรือเขียน) ในขณะที่การสำรวจกระบวนการสำหรับการตรวจสอบสถานะกระบวนการ (ซึ่งเป็นเหมือนการตรวจสอบระบบ) ฉันขออดีตไม่ใช่อย่างหลัง :-)

คำตอบ:


12

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

มุมมองแบบอินเทอร์แอคทีฟน้อยที่ดีกว่าสำหรับใช้ในสคริปต์จะเป็นpsโปรแกรมและทุกอย่างก็เป็นญาติกัน

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


4
ฉันเชื่อว่าtopเทียบเท่ากับ Process Explorerไม่ใช่ Process Monitorใช่ไหม
Mehrdad

วิธีการเกี่ยวกับคุณเรียกใช้และสำรวจหน้าคน ฉันอ่านรายการคุณสมบัติที่คุณเชื่อมโยงกับการตรวจสอบกระบวนการและฟังดูเหมือนว่าhtopครอบคลุมรายละเอียดทั้งหมดยกเว้นการตรวจสอบลำดับการบู๊ต ที่ดีที่สุดก็สามารถเปิดใช้งานในscreen/ tmuxบางส่วนทางผ่าน linux boot lince
Caleb

ในแง่ของความคิดเห็นอื่น ๆ ของคุณคุณอาจกำลังมองหาstraceซึ่งคุณสามารถเปิดใช้งานhtopโดยการกดปุ่มsบนกระบวนการหรือด้วยตนเองจากบรรทัดคำสั่งเมื่อคุณเรียกใช้บางอย่างหรือด้วยกระบวนการ id
Caleb

12

grandaddy ของจอภาพกระบวนการและเครื่องมือในการตรวจสอบระบบจำนวนมากจะเรียกว่าtop topตัวอย่างเช่นมีiotopการดูดิสก์ I / O atopสำหรับทรัพยากรระบบจำนวนมากpowertopเพื่อการใช้พลังงาน

หากคุณต้องการข้อมูลรายละเอียดเพิ่มเติมจะไม่มีการติดตามโดยค่าเริ่มต้น หากต้องการดูว่ากระบวนการเฉพาะกำลังทำอะไรอยู่ให้เรียกstraceใช้ ตัวอย่างเช่นหากคุณสนใจเฉพาะการเข้าถึงระบบไฟล์:

strace -s9999 -efile command_name    # trace a program during its whole execution
strace -s9999 -efile -p1234          # trace a running program with the given PID

straceใช้เฉพาะกับ Linux แต่ระบบอื่นมีเครื่องมือที่คล้ายกัน: trussบน Solaris ktraceหรือdtraceภายใต้ * BSD เป็นต้น

หากต้องการดูสิ่งที่เกิดขึ้นกับแฟ้มเฉพาะหรือในไดเรกทอรีหรือไดเรกทอรีต้นไม้โดยเฉพาะอย่างยิ่งให้ใช้สิ่งอำนวยความสะดวก inotify

inotifywait -m .

สิ่งอำนวยความสะดวกนั้นใช้เฉพาะกับ Linux แต่ส่วนใหญ่ของ Unices นั้นมีระบบที่คล้ายกันเช่นkqueueภายใต้ * BSD และFAM (เดิมมาจาก SGI แต่ตอนนี้มีให้ใช้เป็น API ในหลายระบบ)

หากต้องการดูทุกสายระบบภายใต้ Linux, คุณสามารถใช้ระบบย่อยการตรวจสอบ มันค่อนข้างเร็ว ๆ นี้และมีวรรณกรรมไม่มากนักในหัวข้อ; ค้นหาauditctlหรืออ่านหน้าคนauditctl : มีคู่ของตัวอย่างในเว็บไซต์นี้มีการติดตามการเข้าถึงไฟล์ , การติดตามการดำเนินการกระบวนการ


คุณแน่ใจว่าคุณกำลังหมายถึงเทียบเท่าของกระบวนการตรวจสอบและไม่ได้ Process Explorer ?
Mehrdad

@ Mehrdad: ฉันเห็นฉันไปด้วยชื่อและหน่วยความจำของฉันของเครื่องมือที่ฉันใช้บน Windows (ซึ่งอันที่จริงแล้วเป็น Process Explorer) และไม่ใช่คำอธิบายจริง มันอันตรายเสมอที่จะขอโปรแกรมที่เทียบเท่าโดยเฉพาะดีกว่าที่จะขอโปรแกรมที่มีคุณสมบัติบางอย่าง
Gilles 'ดังนั้นหยุดความชั่วร้าย'

ขอขอบคุณ. iotop -o -b -Pแสดงให้ฉันเห็นกระบวนการที่กำลังทำดิสก์ I / O
bartolo-otrit

8

คุณอาจต้องการที่จะดูที่และlsof straceการตรวจสอบกระบวนการของ Sysinternal เป็นจริง Filemon และ Regmon รวมกับการปรับปรุงเพิ่มเติมบางอย่าง topคำสั่งเพิ่มเติมเช่น Process Explorer




2

ฉันไม่ได้ใช้ Process Monitor นั้น แต่เท่าที่ฉันสามารถบอกได้ว่ามันเหมือนกับgnome-system-monitorระบบ Gnome หากคุณใช้ KDE พวกเขาอาจมีบางสิ่งที่คล้ายกัน


ไม่ต่างกัน การตรวจสอบกระบวนการจริง ๆ ขอการเรียกระบบไม่แสดงข้อมูลกระบวนการ (สิ่งที่คุณกำลังอ้างถึงสามารถทำได้โดย Process Explorer)
Mehrdad

โอ้ฉันมักจะใช้เครื่องมือ CLI vmstat สำหรับสิ่งนั้น แต่นั่นเป็นระบบที่กว้างไม่ใช่ตามกระบวนการ
Keith

1

dtrace4linux อนุญาตให้คุณติดตามเกร็ดเล็กเกร็ดน่าสนใจบางส่วนของเคอร์เนล แม้ว่ามันจะมีประสิทธิภาพมากกว่า sysdig แต่น่าเสียดายที่มันไม่ได้ประพฤติดี

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.