เหตุใด Linux จึงอนุญาตให้ผู้ใช้ลบไดเรกทอรีรูตได้
ส่วนใหญ่ไม่มีใครในพวกเราที่จะทำการกระทำที่จะทำลายระบบปฏิบัติการของเราอย่างแท้จริงและบังคับให้เราติดตั้งใหม่ แต่จะเกิดอะไรขึ้นถ้าการกระทำดังกล่าวสามารถเกิดขึ้นได้อย่างง่ายดายแม้โดยบังเอิญในส่วนของผู้ใช้? โพสต์ SuperUser Q & A วันนี้มีคำตอบสำหรับคำถามของผู้อ่านที่สับสน.
เซสชั่นคำถามและคำตอบในวันนี้มาถึงเราด้วยความอนุเคราะห์จาก SuperUser - แผนกย่อยของ Exchange Exchange ซึ่งเป็นกลุ่มที่ขับเคลื่อนด้วยชุมชนของเว็บไซต์ถาม - ตอบ.
คำถาม
ผู้อ่าน SuperUser fangxing ต้องการทราบว่าเหตุใด Linux จึงอนุญาตให้ผู้ใช้ลบไดเรกทอรีราก:
เมื่อฉันติดตั้ง Linux บนคอมพิวเตอร์เป็นครั้งแรกฉันชอบที่จะใช้เสมอ ราก เพราะฉันไม่จำเป็นต้องเพิ่ม sudo และป้อนรหัสผ่านของฉันทุกครั้งที่ฉันสั่งคำสั่งที่ต้องการสิทธิ์ระดับรูท.
อยู่มาวันหนึ่งฉันแค่ต้องการลบไดเรกทอรีและวิ่ง rm -rf /, ซึ่ง“ ทำลาย” ระบบของฉัน ฉันสงสัยว่าทำไมนักออกแบบของ Linux จึงไม่บล็อกคำสั่งที่เป็นอันตรายเช่นนี้ให้ทำงานได้อย่างง่ายดาย.
ทำไม Linux อนุญาตให้ผู้ใช้ลบไดเรกทอรีราก?
คำตอบ
ผู้สนับสนุน SuperUser Ben N มีคำตอบสำหรับเรา:
ทำไมมันควรบล็อกคุณไม่ให้ทำสิ่งที่คุณต้องการด้วยคอมพิวเตอร์ของคุณเอง? เข้าสู่ระบบในฐานะ ราก หรือใช้ sudo “ ฉันรู้ว่าฉันกำลังทำอะไรอยู่” การป้องกันผู้คนจากการทำสิ่งที่น่าสงสัยมักจะป้องกันพวกเขาจากการทำสิ่งที่ฉลาด (ดังที่เรย์มอนด์เฉินแสดงออก).
นอกจากนี้ยังมีเหตุผลที่ดีอย่างหนึ่งที่อนุญาตให้ผู้ใช้คบเพลิงไดเรกทอรีรากคือ: การรื้อถอนคอมพิวเตอร์โดยการลบระบบปฏิบัติการและระบบไฟล์อย่างสมบูรณ์ (อันตราย! ในบางระบบ UEFI, rm -rf / สามารถก่ออิฐเครื่องทางกายภาพด้วย) นอกจากนี้ยังเป็นสิ่งที่เหมาะสมที่จะทำในคุก chroot.
เห็นได้ชัดว่าผู้คนใช้งานคำสั่งโดยไม่ตั้งใจมากจนเพิ่มคุณสมบัติความปลอดภัย. rm -rf / ไม่ทำอะไรเลยในระบบส่วนใหญ่เว้นแต่ -ไม่มีรักษาราก มีการจัดเตรียมไว้ด้วยและไม่มีวิธีใดที่คุณสามารถพิมพ์โดยไม่ได้ตั้งใจ สิ่งนี้ยังช่วยป้องกันสคริปต์เชลล์ที่เขียนไม่ดี แต่เจตนาดี.
มีสิ่งที่จะเพิ่มคำอธิบายหรือไม่ ปิดเสียงในความคิดเห็น ต้องการอ่านคำตอบเพิ่มเติมจากผู้ใช้ Stack Exchange คนอื่นหรือไม่ ลองอ่านหัวข้อสนทนาเต็มได้ที่นี่.
เครดิตรูปภาพ: Wikimedia Commons