คำถามติดแท็ก process

อินสแตนซ์ของโปรแกรมคอมพิวเตอร์ที่ทำงานอยู่

8
วิธีรับ pgrep เพื่อแสดงข้อมูลกระบวนการทั้งหมด
มีวิธีใดบ้างที่จะpgrepให้ข้อมูลทั้งหมดเกี่ยวกับแต่ละกระบวนการที่psทำ ฉันรู้ว่าฉันสามารถpsผ่านไปได้grepแต่มันก็มีการพิมพ์จำนวนมากและมันก็ทำให้ฉันมีgrepกระบวนการที่ฉันไม่ต้องการ
26 linux  bash  process  grep 


2
Linux / Debian - 'pee' ใน moreutils ทำอะไรได้บ้าง
ฉันเพิ่งค้นพบแพคเกจ 'moreutils ใน Debian (และ Ubuntu) มันเป็นชุดของเครื่องมือยูนิกซ์ที่สะดวก หนึ่งในคำสั่งคือ 'pee' หน้าคนพูดว่า: ฉี่เป็นเหมือนที แต่สำหรับท่อ อย่างไรก็ตามมันเป็นหน้าสั้น ๆฉันได้ยื่นบั๊กแล้ว ไม่มีใครรู้ว่ามันทำอะไรวิธีการใช้ทำไมจะใช้มันได้หรือไม่

4
กระบวนการพื้นหลังได้รับ SIGHUP เมื่อออกจากระบบหรือไม่
นี่คือการติดตามคำถามนี้ ฉันได้ทำการทดสอบเพิ่มเติม ดูเหมือนว่ามันจะไม่สำคัญว่าสิ่งนี้จะทำที่คอนโซลทางกายภาพหรือผ่านทาง SSH สิ่งนี้จะไม่เกิดขึ้นกับ SCP เท่านั้น cat /dev/zero > /dev/nullฉันยังทดสอบกับ พฤติกรรมเหมือนกันทุกประการ: เริ่มต้นกระบวนการในพื้นหลังโดยใช้&(หรือวางไว้ในพื้นหลังหลังจากที่เริ่มใช้CTRL-Zและbg); นี้จะทำโดยไม่ต้องใช้nohup ออกจากระบบ. เข้าสู่ระบบอีกครั้ง initกระบวนการนี้ยังคงมีการทำงานอย่างมีความสุขและตอนนี้เด็กโดยตรงของ ฉันสามารถยืนยันได้ว่าทั้ง SCP และ CAT หยุดทำงานทันทีหากส่งSIGHUP; kill -HUPผมทดสอบนี้โดยใช้ ดังนั้นดูเหมือนว่า SIGHUP จะไม่ถูกส่งเมื่อออกจากระบบอย่างน้อยไปยังกระบวนการพื้นหลัง (ไม่สามารถทดสอบด้วยเบื้องหน้าด้วยเหตุผลที่ชัดเจน) สิ่งนี้เกิดขึ้นกับฉันในตอนแรกด้วยคอนโซลบริการของ VMware ESX 3.5 (ซึ่งใช้ RedHat) แต่ฉันสามารถทำซ้ำได้บน CentOS 5.4 คำถามคืออีกครั้ง: ไม่ควรส่ง SIGHUP ไปยังกระบวนการแม้ว่าพวกเขาจะทำงานในพื้นหลังเมื่อออกจากระบบ? ทำไมสิ่งนี้ไม่เกิดขึ้น? แก้ไข ฉันตรวจสอบด้วยstraceตามคำตอบของ Kyle ตามที่ฉันคาดไว้กระบวนการจะไม่ได้รับสัญญาณใด ๆเมื่อออกจากเชลล์ที่เปิดตัว สิ่งนี้เกิดขึ้นเมื่อใช้คอนโซลของเซิร์ฟเวอร์และผ่าน SSH
21 linux  bash  process  signals 

3
ฉันจะเริ่มต้นกระบวนการในสถานะที่ถูกระงับภายใต้ Linux ได้อย่างไร
ในทางปฏิบัติฉันต้องการกระบวนการที่ทำงานเหมือนกับว่าฉันกดCtrl+Zหลังจากเริ่ม หวังว่ามันเป็นไปได้ที่จะทำสิ่งนี้โดยใช้เชลล์สคริปต์ (และการรู้ PID ที่เกิดขึ้นจะดีมากดังนั้นฉันจึงสามารถดำเนินการต่อได้ในภายหลัง)

6
ฉันจะบันทึกการใช้งาน CPU ต่อกระบวนการได้อย่างไร
ฉันมีกล่องบน Linode ที่มีพฤติกรรมแปลก ๆ ทุกขณะนี้จากนั้น CPU และดิสก์ I / O จะถ่ายภาพได้ถึง 100% และเซิร์ฟเวอร์จะไม่ตอบสนองและต้องทำการบู๊ต ฉันต้องการตรวจสอบให้ดีขึ้นว่าเกิดอะไรขึ้น แต่ฉันไม่รู้ว่าจะค้นหาผู้ที่รับผิดชอบ CPU และ I / O ทั้งหมดนั้นได้อย่างไร ฉันใช้ Gentoo 2.6.18

3
จะหา cgroup ของกระบวนการเฉพาะได้อย่างไร
มีวิธีใดบ้างที่จะได้รับcgroupกระบวนการ? แพคเกจเดียวที่ฉันรู้ ( cgroup-bin) เพียงแค่ให้การจัดการบางอย่างกับ cgroup และอนุญาตให้เปลี่ยน cgroup ของกระบวนการ / รายการกระบวนการ แต่ไม่มีความสามารถในการรู้ข้อมูลเกี่ยวกับ cgroup ของกระบวนการเฉพาะ
18 linux  process  cgroup 

5
มีคำสั่งที่เทียบเท่าสำหรับ 'init.d / การเริ่มระบบเครือข่ายใหม่' ใน OS X
ในบางครั้งฉันพบปัญหาเกี่ยวกับการเชื่อมต่อเครือข่ายของลูกค้า OS X (สายและไร้สาย, Leopard / Snow Leopard) ซึ่งไม่มีอะไรจะแก้ไขปัญหาจนกว่าคุณจะรีบูตเครื่อง มี 'บริการเครือข่าย / กระบวนการ' ที่เฉพาะเจาะจงที่ฉันควรระวังหรือไม่ ฉันคิดว่ามันจะมีประโยชน์หากรู้คำสั่งที่จะรีเซ็ตบริการ / กระบวนการประเภท 'การเชื่อมต่อเครือข่าย' (เหมือนกับการเรียกใช้ sudo /etc/init.d/networking restart) หลังจากการแก้ไขปัญหาเบื้องต้นเช่น DHCP, DNS การตรวจสอบความผิดปกติของอินเทอร์เฟซ (ปิดการใช้งาน / เปิดใช้งาน) การตรวจสอบบันทึกและไม่พบข้อมูลที่เป็นประโยชน์เพียงพอบางครั้งเมื่อทุกอย่างอื่นล้มเหลว ฉันไม่แน่ใจว่าการเริ่มต้นใหม่ / เครือข่ายเริ่มต้นใน Linux แต่ฉันรู้ว่ามันมีประโยชน์มากกว่าการปิดใช้งานและเปิดใช้งานอินเทอร์เฟซ ขอบคุณ!

6
วิธีการฆ่ากระบวนการ <defunct> ด้วย parent 1
ฉันใช้ Bacula บนกล่อง RedHat เมื่อเวลาผ่านไป, การจัดเก็บภูต Bacula-SD &lt;defunct&gt;หยุดทำงานและจะกลายเป็น [root@backup ~]# ps -ef | grep defunct | more root 4801 29261 0 09:25 pts/5 00:00:00 grep defunct root 5825 1 0 Oct18 ? 00:00:00 [bacula-sd] &lt;defunct&gt; คำถามของฉันคือฉันจะฆ่ากระบวนการนี้ได้อย่างไร ผู้ปกครองของมันคือ 1 ซึ่งเป็น init เท่าที่ฉันรู้และฉันไม่ต้องการที่จะฆ่ากระบวนการเริ่มต้นฉันจะทำอย่างไร 'ปกติ' การฆ่ากระบวนการนี้จะไม่ทำงาน: [root@backup ~]# kill -0 5825 [root@backup ~]# …
17 linux  process  kill  bacula 

9
เอกสารประกอบแบบ A-A-Manual และเอกสารประกอบ As-A-Checklist
ฉันเคยพูดคุยกับบุคคลอื่นในแผนกของฉันเกี่ยวกับเอกสารโดยเฉพาะระดับรายละเอียดและข้อกำหนด ในมุมมองของพวกเขาเอกสารเป็นรายการตรวจสอบอย่างง่ายของสิ่ง Y ที่ต้องทำเมื่อสิ่ง X ผิดพลาด ฉันไม่เห็นด้วย. ฉันคิดว่านี่เป็นทึกทักว่าปัญหาทั้งหมดใน IT สามารถถูกต้มลงในรายการตรวจสอบอย่างง่ายของกระบวนการกู้คืน ฉันคิดว่ามันไม่สนใจความซับซ้อนของสถานการณ์อย่างสมบูรณ์และเนื่องจากคนอื่น ๆ ในแผนกไม่ได้มีความเข้าใจอย่างลึกซึ้งเกี่ยวกับปัญหา (ซึ่งเป็นสาเหตุที่ฉันเขียนเอกสาร - ดังนั้นพวกเขาจึงมีบางสิ่งบางอย่างที่จะอ้างถึง ) ว่าเอกสารควรมีเนื้อหาพื้นหลังพื้นฐานบางอย่างเช่น: วัตถุประสงค์ของระบบ (ย่อย) ที่เป็นปัญหา ทำไมมันถูกกำหนดค่าในลักษณะที่ ความคาดหวังของเหตุการณ์ที่จะเกิดขึ้นเมื่อมีการใช้การตั้งค่า / ขั้นตอน ปัญหาที่อาจเกิดขึ้นซึ่งอาจทำให้กระบวนการล้มเหลว อย่างไรก็ตามฉันค่อนข้าง outvoted ในเรื่องนี้ดังนั้นเอกสารของฉันจะต้องเขียนใหม่ในแบบฟอร์มที่ระบุว่า "ขั้นตอน ABC ที่ใช้ในการสั่งซื้อจะแก้ไขปัญหา X" ฉันมักจะได้ยินถึงความโศกเศร้าที่ต้องใส่ลงในกระดาษหน้าเดียว ลองอธิบายการกำหนดค่า Squid ACL ให้กับใครบางคนในลักษณะนี้รวมถึงการแก้ไขปัญหาผ่านเอกสารหน้าเดียว นั่นเป็นเพียงหนึ่งในเอกสารครึ่งโหลที่ "รอการเขียน" เป็นรายการตรวจสอบการกู้คืน เป็นวิธีที่ฉันเรียกร้องให้ลงน้ำจริงๆหรือไม่? หรือว่าถูกต้องและฉันควรคำนึงถึงธุรกิจของฉันที่นี่และเขียนรายการตรวจสอบง่ายๆ ความกังวลของฉันคือว่าไม่ว่าคุณจะเขียนรายการตรวจสอบขั้นตอนได้ดีเพียงใดมันไม่ได้แก้ปัญหาที่ต้องใช้ SysAdmin เพื่อคิดสิ่งต่าง ๆ หากคุณใช้เวลาทำรายการตรวจสอบขั้นตอนการกู้คืนซึ่งไม่สามารถแก้ไขปัญหาได้ (เนื่องจากมีปัจจัยเพิ่มเติมที่ไม่ได้เป็นส่วนหนึ่งของเอกสารเนื่องจากจุดเน้นที่แคบของเอกสาร ) …


5
ฆ่าโพรเซสแล้วบังคับให้คืนค่า 0 ใน Linux?
ในสภาพแวดล้อม Linux ฉันจะส่งสัญญาณ kill ไปยังกระบวนการได้อย่างไรในขณะที่ตรวจสอบให้แน่ใจว่ารหัสทางออกที่ส่งคืนจากกระบวนการนั้นเป็น 0 ฉันต้องทำเวทย์มนตร์ GDB แฟนซีสำหรับเรื่องนี้หรือจะมีสัญญาณการฆ่าแฟนซีที่ฉันไม่รู้? กรณีทดสอบ: cat; echo $? killall cat การลองใช้สัญญาณ kill ต่าง ๆ จะให้สัญญาณส่งกลับที่แตกต่างกันเช่น 129, 137 และ 143 เป้าหมายของฉันคือฆ่ากระบวนการที่สคริปต์ทำงาน แต่ทำให้สคริปต์คิดว่ามันประสบความสำเร็จ
16 linux  process  kill 

1
วางกระบวนการในพื้นหลังโดยไม่หยุด - (ctrl + z)?
หากฉันเริ่มต้นกระบวนการโดยพิมพ์ตามปกติที่บรรทัดคำสั่งเช่น wget http://site.com/bigfile.zip แล้วตัดสินใจว่าฉันต้องการย้ายไปที่พื้นหลังฉันรู้ว่าฉันสามารถใช้บางอย่างเช่นctrl+zแล้วbg 1(หรือjobsก่อนถ้าจำเป็นต้องได้รับรหัส) เพื่อวางไว้ในพื้นหลัง คำถามของฉันคือหากมีวิธีการย้ายงานจากเบื้องหน้าไปยังพื้นหลังโดยตรงโดยไม่หยุด - เช่นทางลัดอื่นนอกเหนือจากctrl+zนั้นจะทำเช่นนั้น ฉันยังตระหนักว่าฉันสามารถผนวก&amp;ท้ายคำสั่งเดิมเพื่อเริ่มต้นในพื้นหลัง แต่คำถามนั้นเกี่ยวกับเมื่อคุณเริ่มกระบวนการในเบื้องหน้าแล้วรู้ว่าคุณต้องการย้ายไปยังพื้นหลัง


4
คุณจะฆ่าต้นไม้กระบวนการใน linux ได้อย่างไร? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับข้อบกพร่องของเซิร์ฟเวอร์ ปิดให้บริการใน8 ปีที่ผ่านมา บางครั้งการส่ง SIGTERM ไปยังกระบวนการจะทำให้ SIGTERM ส่งไปยังกระบวนการลูกทั้งหมด อย่างไรก็ตามบางครั้งสิ่งนี้ไม่ทำงาน มีคำสั่งหรือยูทิลิตี้ที่อนุญาตให้ฉันฆ่ากระบวนการและกระบวนการลูกทั้งหมดในเวลาเดียวกันได้หรือไม่? ฉันมักจะหันไปเก็บรวบรวม pids ทั้งหมดด้วยตนเองในคำสั่ง kill เดียว แต่ก็รู้สึกโง่ คำถาม SO นี้ถามว่าจะทำอย่างไรกับ Perl แต่สิ่งใดก็ตามที่ทำให้งานสำเร็จจะดี
14 linux  process  kill 

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