Ubuntu หนึ่งใช้รีโมทsudo -S -p '' halt
เพื่อปิดเครื่องและใช้งานไม่ได้จนถึงที่สุด เปิดจอมอนิเตอร์พร้อมข้อความ
ตอนนี้จะหยุด
[22225.11163] หยุด
ความแตกต่างระหว่างคืออะไรsudo -S -p " halt
และsudo shutdown now
?
Ubuntu หนึ่งใช้รีโมทsudo -S -p '' halt
เพื่อปิดเครื่องและใช้งานไม่ได้จนถึงที่สุด เปิดจอมอนิเตอร์พร้อมข้อความ
ตอนนี้จะหยุด
[22225.11163] หยุด
ความแตกต่างระหว่างคืออะไรsudo -S -p " halt
และsudo shutdown now
?
คำตอบ:
-S
และ-p
สวิทช์สำหรับการsudo
ไม่มีความสำคัญในกรณีนี้ นี่คือสิ่งที่พวกเขาทำตามลำดับ
-S
สวิทช์ที่ทำให้เกิดsudo
การอ่านรหัสผ่านจาก STDIN นี้จะช่วยให้ยกตัวอย่างเช่นรหัสผ่านที่จะได้รับการประปาจะsudo
ผ่านหรือecho
cat
-p
สวิตช์ช่วยให้คุณแทนที่รหัสผ่านเริ่มต้นที่รวดเร็วและใช้อย่างใดอย่างหนึ่งที่กำหนดเองหรือไม่มีเลย
sudo
ความแตกต่างที่สำคัญคือในคำสั่งที่สองถูกออกโดย
halt
คำสั่งถ้าเรียกโดยไม่มี-p
สวิทช์เพียงแค่หยุด OS และหยุดซีพียูทั้งหมด เมื่อระบบถูกหยุดอย่างสมบูรณ์ผู้ใช้อาจกดปุ่มเปิด / ปิดบนคอมพิวเตอร์ของตนเองอย่างปลอดภัยกระบวนการ
poweroff
,,shutdown -h now
และhalt -p
คำสั่งทั้งหมดทำสิ่งhalt
เดียวกับที่อยู่คนเดียวในขณะที่ส่งคำสั่ง ACPI ไปยังส่งสัญญาณให้หน่วยจ่ายไฟเพื่อตัดการเชื่อมต่อพลังงานหลัก สิ่งนี้ป้องกันไม่ให้คุณต้องกดปุ่มเปิด / ปิดเครื่องบนคอมพิวเตอร์ของคุณ
halt
ไม่ใช่shutdown
พวกเขาเป็นคำสั่งที่แตกต่างกัน อดีตไม่ได้ปิดไฟจนกว่า-p
จะมีการใช้ตัวเลือก
จาก manual ( man halt
): "-p, --poweroff: สั่งให้คำสั่ง halt แทนทำงานเป็น poweroff แทน"
และในกรณีของคุณ-p
ถูกไม่ได้นำมาใช้ในhalt
คำสั่งด้วยเหตุนี้คอมพิวเตอร์ของคุณไม่ได้ปิด
อย่าสับสนกับ -p อันนี้จากsudo
มันเป็นพารามิเตอร์ที่แตกต่างกันสำหรับคำสั่งที่แตกต่างกัน จากman sudo
:
-S
ตัวเลือก -S (stdin) ทำให้ sudo อ่านรหัสผ่านจากอินพุตมาตรฐานแทนอุปกรณ์ปลายทาง รหัสผ่านจะต้องตามด้วยอักขระขึ้นบรรทัดใหม่-p prompt
ตัวเลือก -p (พรอมต์) อนุญาตให้คุณแทนที่การแจ้งรหัสผ่านเริ่มต้นและใช้รหัสที่กำหนดเองในกรณีของคุณprompt
ว่างเปล่า (ไม่มีข้อความแสดง sudo เมื่อถามรหัสผ่าน) และ -S ทำให้ sudo ยอมรับรหัสผ่านรูท vi stdin (ดังนั้นรหัสผ่านอาจถูกจัดหาโดยใช้ไพพ์และการเปลี่ยนเส้นทางจากคำสั่งอื่นแทนการพิมพ์)
มีคำตอบที่ดีที่ไซต์ Unix SEเกี่ยวshutdown
กับhalt
ปัญหาvs : อะไรคือความแตกต่างระหว่างคำสั่ง Halt และ Shutdown?
สำหรับsudo -S -p ''
ส่วนนี้จะเป็นการลบข้อความเกี่ยวกับการถามรหัสผ่านในเทอร์มินัล (คุณยังต้องใส่รหัสผ่านของคุณ)
ตัวอย่างเช่นการรันsudo <some_command>
จะให้เอาต์พุตนี้ก่อนรันคำสั่งนี้:
[sudo] รหัสผ่านสำหรับ:
แต่การทำงานsudo -S -p '' <some_command>
จะซ่อนข้อความนั้น
ในความเป็นจริงข้อความที่คุณใส่ในเครื่องหมายคำพูดคือการแทนที่ข้อความก่อนหน้า
ไปข้างหน้าและลองต่อไปนี้และดูความแตกต่าง:
sudo -S -p 'Hey, I am a custom message.' ls
ไม่มีความแตกต่างระหว่างคำสั่ง halt และการปิดในแง่ของความตั้งใจของผู้ใช้ ความแตกต่างบางประการคือในการหยุดคุณต้องกดปุ่มเปิดปิดเครื่องเพื่อปิดระบบในขณะที่คำสั่งปิดเครื่องจะสั่งให้ Advanced Configuration Power Interface (ACPI) โดยอัตโนมัติเพื่อส่งสัญญาณไปยังหน่วยพลังงานเพื่อปิดระบบ
shutdown -h now
ไม่จำเป็นต้องปิดเครื่องด้วยเช่นกัน ตามman shutdown
มันขึ้นอยู่กับระบบshutdown -H now
(สังเกตแคปบนH
) เป็นสิ่งที่รับประกันว่าเทียบเท่ากับhalt