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

กระบวนการเป็นตัวอย่างของโปรแกรมคอมพิวเตอร์ที่กำลังดำเนินการ

6
การกด ctrl-c หลาย ๆ ครั้งทำให้โปรแกรมที่กำลังรันปิดเร็วขึ้นหรือไม่?
ฉันมักจะเริ่มอ่านไฟล์ขนาดใหญ่แล้วต้องการออกหลังจากนั้นไม่นาน แต่มีความล่าช้าในการกดCtrl+ Cเพื่อหยุดโปรแกรม มีโอกาสที่จะลดความล่าช้าโดยการกดปุ่มCtrl+ Cหลาย ๆ ครั้งหรือไม่? หรือฉันจะสูญเสียการกดคีย์ของฉัน
41 process  kill  signals 

8
ps สามารถแสดงกระบวนการที่ไม่ใช่เคอร์เนลบน Linux ได้หรือไม่
ฉันpsจะขอให้แสดงเฉพาะกระบวนการของผู้ใช้และไม่ใช่เคอร์เนลเธรดได้อย่างไร ดูคำถามนี้เพื่อดูว่าฉันหมายถึงอะไร ...

1
ฉันจะตรวจสอบไฟล์ที่เปิดของกระบวนการแบบเรียลไทม์ได้อย่างไร
ฉันรู้ว่าฉันสามารถดูไฟล์ที่เปิดของกระบวนการที่ใช้lsof ในขณะนั้นในเครื่อง Linux ของฉัน อย่างไรก็ตามกระบวนการสามารถเปิดแก้ไขและปิดไฟล์ได้อย่างรวดเร็วจนฉันไม่สามารถมองเห็นได้เมื่อทำการตรวจสอบโดยใช้เชลล์สคริปต์มาตรฐาน (เช่นwatch) ตามที่อธิบายไว้ใน"การตรวจสอบไฟล์กระบวนการเปิดบน linux (เรียลไทม์)" . ดังนั้นฉันคิดว่าฉันกำลังมองหาวิธีง่ายๆในการตรวจสอบกระบวนการและดูว่ามันทำอะไรไปบ้างเมื่อเวลาผ่านไป มันจะดีถ้ามันเป็นไปได้ที่จะเห็นว่าการเชื่อมต่อเครือข่ายมัน (พยายามที่จะ) และให้เริ่มต้นการตรวจสอบก่อนที่กระบวนการจะมีเวลาในการทำงานโดยไม่ต้องเริ่มการตรวจสอบ เป็นการดีที่ฉันต้องการทำสิ่งนี้: sh $ audit-lsof /path/to/executable 4530.848254 OPEN read /etc/myconfig 4530.848260 OPEN write /var/log/mylog.log 4540.345986 OPEN read /home/gert/.ssh/id_rsa <-- suspicious 4540.650345 OPEN socket TCP ::1:34895 -> 1.2.3.4:80 | [...] 4541.023485 CLOSE /home/gert/.ssh/id_rsa <-- would have missed 4541.023485 …

6
กระบวนการใดเป็น `/ proc / self /` เพื่อ?
https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s3-proc-self.html พูดว่า /proc/self/ไดเรกทอรีคือการเชื่อมโยงกับกระบวนการที่เรียกใช้อยู่ มีหลายกระบวนการที่ทำงานพร้อมกันเสมอดังนั้นกระบวนการใดที่เป็น "กระบวนการที่กำลังทำงานอยู่"? "กระบวนการที่กำลังทำงานอยู่" มีส่วนเกี่ยวข้องกับกระบวนการใดที่กำลังทำงานอยู่บน CPU ในปัจจุบันโดยพิจารณาจากการสลับบริบทหรือไม่ "กระบวนการที่กำลังทำงานอยู่" นั้นไม่มีส่วนเกี่ยวข้องกับกระบวนการพื้นหน้าและเบื้องหลังหรือไม่?
40 linux  process  proc 

2
ทำไมกระบวนการทดแทนจึงส่งผลให้ไฟล์ชื่อ / dev / fd / 63 ซึ่งเป็นไพพ์
ฉันพยายามเข้าใจไพพ์ที่มีชื่อในบริบทของตัวอย่างเฉพาะนี้ ฉันพิมพ์<(ls -l)เทอร์มินัลแล้วรับเอาต์พุตเป็น, bash: /dev/fd/63: Permission denied. ถ้าฉันพิมพ์cat <(ls -l)ฉันจะได้เห็นเนื้อหาไดเรกทอรี ถ้าฉันแทนที่catด้วยechoฉันคิดว่าฉันได้รับชื่อสถานี (หรือมันคืออะไร?) echo <(ls -l)/dev/fd/63ให้ออกเป็น นอกจากนี้ผลลัพธ์ตัวอย่างนี้ไม่ชัดเจนสำหรับฉัน ls -l <(echo "Whatever") lr-x------ 1 root root 64 Sep 17 13:18 /dev/fd/63 -> pipe:[48078752] อย่างไรก็ตามถ้าฉันให้ls -l <()มันจะแสดงเนื้อหาไดเรกทอรี เกิดอะไรขึ้นในกรณีของไปป์ที่ระบุชื่อ?

5
จะส่งการกดแป้น (F5) จากเทอร์มินัลไปยังโปรแกรม GUI ได้อย่างไร
ฉันใช้ Raspberry Pi ร่วมกับ Chromium (โหมดคีออสก์) เพื่อแสดงสถิติ พี่ไม่ได้มีแป้นพิมพ์ที่เกี่ยวโยงกันดังนั้นผมจึงสืบค้นหาวิธีการแก้ปัญหาการกดแป้นพิมพ์ส่งจากสถานีไปยังกระบวนการโครเมี่ยม (แท็บ) อินพุตปกติใช้งานได้ แต่ฉันจะส่งบางสิ่งเช่นF5(คีย์พิเศษ: การรีเฟรชเบราว์เซอร์) ผ่านทางโซลูชันนี้ได้อย่างไร # pidof chromium 20809 20790 20788 20786 20783 # echo 'some text' > /proc/20809/fd/0
40 process  x11  input 

9
ฉันจะฆ่ากระบวนการได้อย่างไรและตรวจสอบว่า PID ไม่ได้ถูกนำมาใช้ซ้ำ
ตัวอย่างเช่นสมมติว่าคุณมีเชลล์สคริปต์คล้ายกับ: longrunningthing & p=$! echo Killing longrunningthing on PID $p in 24 hours sleep 86400 echo Time up! kill $p ควรทำเคล็ดลับไม่ได้หรือไม่ ยกเว้นว่ากระบวนการนี้อาจสิ้นสุดก่อนกำหนดและ PID ของมันอาจถูกนำกลับมาใช้ใหม่หมายถึงงานที่ไร้เดียงสาบางอย่างได้รับระเบิดในคิวสัญญาณแทน ในทางปฏิบัติสิ่งนี้อาจมีความสำคัญ แต่มันทำให้ฉันกังวล การแฮ็กข้อมูลนาน ๆ เพื่อที่จะตายด้วยตัวเองหรือเก็บ / ลบ PID ของมันบน FS จะทำ แต่ฉันคิดถึงสถานการณ์ทั่วไปที่นี่
40 process  kill 

4
nohup เทียบกับหน้าจอ
ก่อนหน้านี้ฉันเคยnohupทำงานที่มีพื้นหลังใหญ่ แต่ฉันสังเกตเห็นว่ามีผู้คนจำนวนมากที่ใช้งานscreenในบริบทนี้ ไม่screenให้ชนิดของความได้เปรียบการทำงานบางอย่างที่ผมไม่รู้หรือมันเป็นเพียงเรื่องของการตั้งค่าหรือไม่?

2
ps สลับไปแสดง PID, PPID, PGID และ SID รวม
ฉันลองใช้ ps ด้วยสวิตช์ชนิดต่าง ๆ เช่น -A, aux, ef และอื่น ๆ แต่ฉันไม่สามารถหาชุดที่ถูกต้องของสวิตช์ที่จะบอก ID กระบวนการ (PID), ID กระบวนการหลัก (PPID), กลุ่มกระบวนการ ID (PGID) และ Session ID (SID) ของกระบวนการในเอาต์พุตเดียวกัน
38 process  ps 


6
มีวิธีหยุดกระบวนการทำงานชั่วคราวบนระบบ Linux และกลับมาทำงานต่อในภายหลังหรือไม่?
ฉันต้องคัดลอกไฟล์บนเครื่อง และข้อมูลมีขนาดใหญ่มาก ตอนนี้เซิร์ฟเวอร์จำเป็นต้องให้บริการตามปกติและโดยปกติจะมีช่วงเวลาที่ยุ่งเหยิงในช่วงนั้น ดังนั้นมีวิธีการเรียกใช้คำสั่งดังกล่าวในลักษณะที่ว่าถ้าเซิร์ฟเวอร์ไม่ว่างชั่วโมงมันหยุดกระบวนการและเมื่อออกจากช่วงที่มันจะดำเนินการต่อหรือไม่ ตั้งใจ-ผล cp src dst if time between 9:00-14:00 pause process After 14:00 resume cp command.

7
ฉันจะปิดเทอร์มินัลโดยไม่ฆ่าลูก ๆ ของมันได้อย่างไร
บางครั้งฉันเรียกใช้แอปใน gnome-terminal แต่ทันใดนั้นฉันต้องรีสตาร์ท gnome หรือบางอย่าง ฉันเดาว่าคำตอบสำหรับคำถามนั้นมีประโยชน์แล้วฉันต้องการตัดการเชื่อมต่อจาก SSH ซึ่งมีบางอย่างเกิดขึ้น แผนผังต้นไม้ของ Gnome มีลักษณะเช่นนี้: gnome-terminal bash some-boring-process ฉันสามารถ 'แยก' ออกbashจากgnome-terminal(หรือแยกออกsome-boring-processจากการทุบตีและเปลี่ยนเส้นทางผลลัพธ์ของมันไปที่อื่นได้หรือไม่) ถ้าฉันเพิ่งฆ่าgnome-terminalมันbashจะถูกฆ่าเพื่อกระบวนการย่อยทั้งหมดของมัน

1
อะไรคือ“ การสลับบริบทโดยสมัครใจ”?
ฉันได้รับไฟล์ไบนารีและฉันควรจะถอดรหัสรหัสผ่าน (ทำการบ้าน) นอกจากนี้ยังมีฟังก์ชั่นที่ได้รับ (ฟังก์ชั่นซึ่งเป็นส่วนหนึ่งของไฟล์ไบนารี) ฟังก์ชั่นนั้นแสดงให้เห็นว่าสตริงการป้อนข้อมูลถูกเปรียบเทียบกับอักขระรหัสผ่านที่ถูกต้องตามตัวอักษรและคืนเท็จทันทีเมื่ออักขระผิด (นั่นไม่ใช่วิธีที่ปลอดภัยในการทำฉันเดาเพราะมันถึงเวลาที่จะรั่วไหล ตัวอย่าง). แต่ครูของเราได้เพิ่มตัวจับเวลาแบบสุ่มที่ให้ผลลัพธ์ (แก้ไข / ผิด) เพื่อให้ยากขึ้นสำหรับเรา ... อย่างไรก็ตามฉันมีฉันทำมันสำเร็จแล้วด้วยวิศวกรรมย้อนกลับและได้รับรหัสผ่านที่ถูกต้อง ตอนนี้ฉันกำลังเล่นกับมันในบรรทัดคำสั่ง: /usr/bin/time -v ./program_name enter_password ด้วยคำสั่งนี้ฉันได้รับข้อมูลมากมายเช่นเวลาของระบบ, swaps, เวลาดำเนินการ .. แต่สิ่งที่น่าสนใจที่สุดสำหรับฉันคือ "การเปลี่ยนบริบทโดยสมัครใจ" เพราะอักขระที่ถูกต้องมากขึ้นของรหัสผ่านที่ฉันป้อน " ฉันเข้าใจ! ยิ่งฉันป้อนตัวละครผิดมากเท่าไหร่ฉันจะได้รับ ฉันใช้เวลาเกือบสองชั่วโมงในการถอดรหัสรหัสผ่านเพียงแค่ป้อนคำสั่งนั้นป้อนอักขระและสังเกต "สวิตช์บริบทแบบสมัครใจ" เมื่อใดก็ตามที่อักขระ ONE ถูกต้อง "การสลับบริบทแบบสมัครใจ" จะลดลงหนึ่งตัว คำถามของฉัน "สวิตช์บริบทแบบสมัครใจ" คืออะไรและทำไมพวกเขาถึงช่วยฉันถอดรหัสรหัสผ่าน

3
ฉันจะดูรายการกระบวนการที่ทำลายเคอร์เนลได้ที่ไหน
มีวิธีใดบ้างที่ฉันสามารถตรวจสอบกระบวนการของฉันซึ่งเคอร์เนลได้ฆ่า? บางครั้งฉันเข้าสู่เซิร์ฟเวอร์ของฉันและพบว่าบางสิ่งบางอย่างที่ควรจะทำงานทั้งคืนเพียงแค่หยุด 8 ชั่วโมงในและฉันไม่แน่ใจว่ามันเป็นแอปพลิเคชันที่ทำหรือเมล็ด

3
ฉันจะบอกสคริปต์เพื่อรอให้กระบวนการเริ่มยอมรับการร้องขอบนพอร์ตได้อย่างไร
ฉันต้องการคำสั่งที่จะรอให้กระบวนการเริ่มยอมรับการร้องขอบนพอร์ตเฉพาะ มีอะไรใน linux หรือเปล่า? while (checkAlive -host localhost -port 13000 == false) do some waiting ...

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