เมื่อวันก่อนฉันทำงานบำรุงรักษาบางอย่างบนเว็บเซิร์ฟเวอร์ของฉัน ฉันรีบและง่วงนอนดังนั้นฉันจึงทำทุกอย่างโดยใช้sudo
คำสั่ง
จากนั้นฉันกดCtrl+ โดยไม่ตั้งใจVส่งคำสั่งนี้ไปยังเว็บเซิร์ฟเวอร์ของฉัน:
sudo rm -rf /*
สำหรับผู้ที่สงสัยว่าคำสั่งดังกล่าวทำอะไร: สิ่งนี้ลบเว็บเซิร์ฟเวอร์ทั้งหมดของฉัน
โชคดีที่ฉันมีข้อมูลสำรองและเศร้าฉันต้องใช้เวลาอีกสองชั่วโมงในการตื่นเพื่อแก้ไขข้อผิดพลาดที่น่ากลัวนี้ แต่ตั้งแต่นั้นมาฉันก็สงสัยว่า:
มีวิธีในการบังคับใช้รหัสผ่าน sudo สำหรับคำสั่งเฉพาะหรือไม่
หากเซิร์ฟเวอร์ขอรหัสผ่านฉันจะช่วยตัวเองให้พ้นจากปัญหามากมาย มันไม่ได้เพราะฉันวิ่งไปประมาณ 5 sudo
คำสั่งก่อนที่ข้อผิดพลาดอันยิ่งใหญ่นี้
ดังนั้นมีวิธีที่จะทำมันได้หรือไม่ ฉันแค่ต้องการรหัสผ่านพร้อมrm
คำสั่งเพื่อบังคับใช้เสมอ คำสั่งอื่น ๆ ที่ฉันใช้มักจะเป็นnano
หรือcp
ที่ทั้งคู่เป็น (กลับกันได้บ้าง)
/*
ถูกขยายก่อนที่จะถูกส่งไปยังคำสั่ง rm ดังนั้นคำสั่งจะไม่เห็นอาร์กิวเมนต์เดี่ยว แต่รายการอาร์กิวเมนต์ ( /bin /boot /cdrom /dev /etc /home
... )
rm
คำสั่งมีรหัสผ่าน พวกเขาต้องการที่sudo
จะถามหนึ่งครั้งทุกครั้งที่ใช้คำสั่ง rm sudo rm
วิธีการแก้ปัญหาให้กับคำถามที่คุณเชื่อมโยงก็จะกลายเป็นน่ารำคาญเล็กน้อยเมื่อคำสั่งแรกคุณคือ ในขณะที่มันจะขอรหัสผ่านสองหนึ่งสำหรับหนึ่งสำหรับsudo
rm