สมมติว่าคุณเพิ่งป้อนคำสั่งshutdown -h now
(หรือสิ่งที่เทียบเท่า) มีอะไรที่คุณสามารถทำได้จริง ๆ (ถ้าคุณเร็วพอ) เพื่อป้องกันไม่ให้เครื่องหยุดทำงาน?
สมมติว่าคุณเพิ่งป้อนคำสั่งshutdown -h now
(หรือสิ่งที่เทียบเท่า) มีอะไรที่คุณสามารถทำได้จริง ๆ (ถ้าคุณเร็วพอ) เพื่อป้องกันไม่ให้เครื่องหยุดทำงาน?
คำตอบ:
คุณสามารถเรียกใช้shutdown -c
เพื่อยกเลิกการปิดระบบที่กำลังทำงานอยู่ได้
ctrl+c
ctrc+c
shutdown -c
แต่เมื่อกำหนดความเร็วของ-now
ตัวเลือกมากกว่ากำหนดพี่น้องctrl+c
จะเป็นเส้นทางที่เร็วที่สุดไปยังจุดสิ้นสุด ฉันไม่เชื่อว่าคุณสามารถหยุดการหยุดทำงานได้อย่างน่าประหลาดใจยิ่งกว่านั้นคุณสามารถขัดจังหวะได้ แต่เห็นได้ชัดว่าคุณทำได้ แต่เป็นการแข่งขันตามที่คุณระบุไว้
หากคุณเร็วพอคุณสามารถออกinit 2
(หรืออะไรก็ได้ที่คุณต้องการ) และนั่นอาจจะเป็นการหยุดการปิดระบบ สิ่งใดก็ตามที่เกี่ยวข้องกับการฆ่าคำสั่ง shutdown จะล้มเหลวเมื่อคำสั่งรันเร็วเกินไป
ฉันลองใช้สคริปต์ด้านล่างนี้และแม้จะไม่เร็วพอที่จะหยุดการปิดระบบ
#!/bin/bash
shutdown -h now
shutdown -c "Aborting Shutdown"
Broadcast message from iain@iain-ubuntu
(/dev/pts/0) at 16:50 ...
The system is going down for halt NOW!
shutdown: Cannot find pid of running shutdown
ที่ไหนเป็นแบบโต้ตอบ
shutdown -h now
init 2
ระบบยังคงอยู่
จากหน้า FreeBSD:
การปิดระบบตามกำหนดเวลาสามารถยกเลิกได้โดยการฆ่ากระบวนการปิด (SIGTERM ควรเพียงพอ)
ดังนั้นkillall shutdown
การทำงานบน BSD เมื่อมีการปิดระบบที่กำหนด (เช่นshudown -h +5
)
ฉันไม่คิดว่าเป็นไปได้ที่จะยกเลิกการปิดระบบทันที ( shutdown -h now
) ในสถานการณ์จริง
สมมติว่าคุณส่งข้อความรีบูตหรือปิดระบบไปยังเทอร์มินัลทั้งหมดเพื่อจุดประสงค์ในการบำรุงรักษาที่ "เซิร์ฟเวอร์กำลังจะรีบูตหรือปิดระบบเพื่อการบำรุงรักษาภายใน 10 นาที"
คำสั่งชนิดนี้สามารถยกเลิกได้
เพียงกดCtrl+C
shutdown -h now
ฉันเชื่อว่าคุณสูญเสียการเข้าถึงบรรทัดคำสั่งทันทีคล้าย ๆ กันhalt -p
ดังนั้นจึงไม่มีอะไรที่คุณสามารถทำได้