เมื่อคุณเรียกใช้แอ็พพลิเคชันผู้ดูแลระบบใน Linux คุณสามารถใช้คำสั่ง su ("switch user") เพื่อเปลี่ยนไปใช้ superuser (root) หรือคุณสามารถใช้คำสั่ง sudo ("super user do") ได้
วิธีหนึ่งที่จะทราบว่าเมื่อใดควรใช้คำสั่ง sudo ก็คือถ้าคุณกำลังพยายามเรียกใช้คำสั่งในเครื่องเทอร์มินัลเพียงเพื่อให้ตรงกับ "access denied" หรือ "operation requires superuser privilege" ข้อผิดพลาด ข้อผิดพลาดเหล่านี้อาจเกิดขึ้นได้หากการแจกจ่าย Linux เช่น Ubuntu ไม่สามารถใช้งานผู้ใช้ root ได้ เมื่อคุณใช้คำสั่ง sudo คำสั่งเฉพาะที่สามารถเรียกใช้ด้วยสิทธิยกระดับ
อย่างไรก็ตามถ้าคุณเลือกที่จะใช้คำสั่ง su คุณจะเปลี่ยนผู้ใช้ทั้งหมดเป็น root ซึ่งหมายความว่าแม้จะมีคำสั่งแรกทุกครั้งที่ต่อมาก็จะรันด้วยข้อมูลประจำตัวของ root ทำให้ง่ายต่อการรันคำสั่งที่ยกระดับโดยไม่ตั้งใจซึ่งอาจทำให้เกิดความเสียหายได้มากถ้าคุณไม่ระมัดระวัง
เมื่อต้องการทำใหม่: sudo ทำงานเฉพาะกับคำสั่งที่เริ่มต้นเป็น "sudo" ในขณะที่ su จะช่วยให้ ทุกๆ ในพรอมต์เพื่อให้ทำงานเป็น superuser โดยไม่จำเป็นต้องพิมพ์ sudo หรือ su ก่อนแต่ละไฟล์
มันทำงานอย่างไร
แม้ว่าจะทำงานแตกต่างกันคุณสามารถเปรียบเทียบคำสั่ง sudo กับข้อความแจ้งที่คุณอาจเห็นใน Windows หรือ MacOS เมื่อระบบถามในระบบปฏิบัติการเหล่านั้นถามว่าคุณต้องการให้ดำเนินการเฉพาะอย่างต่อเนื่องคุณจะพบกับปุ่มที่ยืนยันว่าคุณต้องการใช้งานที่มีสิทธิ์ยกระดับและในบางครั้งคุณอาจต้องป้อนรหัสผ่านของผู้ดูแลระบบ .
เช่นเดียวกับในระบบปฏิบัติการ Linux จะใช้คำสั่ง sudo เป็นผนังระหว่างงานปกติกับผู้ดูแลระบบเพื่อที่คุณจะต้องยืนยันว่าคุณต้องการจะทำอะไรก็ตามที่คำสั่งจะรัน คำสั่ง runas ใน Windows ก็ยิ่งคล้ายกันมากขึ้นเท่านั้น เช่นใน Linux คำสั่ง runas จะทำงานจากบรรทัดคำสั่งเพื่อเปิดไฟล์ที่มีข้อมูลรับรองจากผู้ใช้บางรายซึ่งมักเป็นผู้ดูแลระบบ
ปลาย: ถ้าคุณไม่แน่ใจว่าคุณใช้ sudo หรือ su ดูอักขระต่อท้ายในบรรทัดคำสั่ง ถ้าเป็นเครื่องหมายปอนด์ (#) คุณลงชื่อเข้าใช้ด้วย root
เกี่ยวกับคำสั่ง Sudo
ใน Linux sudo ("sue dough") ช่วยให้ผู้ดูแลระบบสามารถให้ผู้ใช้หรือกลุ่มผู้ใช้บางรายสามารถเรียกใช้คำสั่งบางส่วนหรือทั้งหมดเป็น root ได้ขณะที่ทำการบันทึกคำสั่งและอาร์กิวเมนต์ทั้งหมด แต่ก็ไม่ได้เปลี่ยนเปลือก
เมื่อคุณใส่ "sudo" ไว้ข้างหน้าคำสั่งใด ๆ ในเทอร์มินัลแล้วจะมีการเรียกใช้สิทธิดังต่อไปนี้ด้วยเหตุนี้จึงเป็นทางเลือกในการแก้ไขข้อผิดพลาดที่เกี่ยวข้อง จำเป็นต้องใช้หากคุณต้องการเรียกใช้คำสั่งที่ถือว่าเป็นงานด้านการจัดการ
Sudo ทำงานบนพื้นฐานต่อคำสั่ง รวมถึงความสามารถในการ จำกัด คำสั่งที่ผู้ใช้สามารถเรียกใช้บนพื้นฐานของโฮสต์แต่ละการเข้าสู่ระบบที่หลากหลายของคำสั่งแต่ละคำเพื่อให้การตรวจสอบอย่างชัดเจนว่าใครทำอะไรกำหนดการหมดเวลาของคำสั่ง sudo และความสามารถในการใช้งานเดียวกัน ไฟล์การกำหนดค่าบนเครื่องอื่น
Sudo Command ตัวอย่าง
ผู้ใช้มาตรฐานที่ไม่มีสิทธิ์ระดับผู้ดูแลระบบอาจป้อนคำสั่งใน Linux เพื่อติดตั้งซอฟต์แวร์บางส่วน:
dpkg -i software.deb
คำสั่งส่งคืนข้อผิดพลาดเนื่องจากบุคคลที่ไม่มีสิทธิ์การดูแลระบบไม่ได้รับอนุญาตให้ติดตั้งซอฟต์แวร์ อย่างไรก็ตามคำสั่ง sudo ได้รับการช่วยเหลือ แต่คำสั่งที่ถูกต้องสำหรับผู้ใช้รายนี้คือ:
sudo dpkg -i software.deb
เวลานี้ติดตั้งซอฟต์แวร์ สมมติว่าบุคคลที่มีสิทธิ์ระดับผู้ดูแลระบบได้กำหนดค่า Linux ไว้ก่อนเพื่อให้ผู้ใช้สามารถติดตั้งซอฟต์แวร์หรือหากได้รับพรอมต์ด้วยรหัสผ่านให้ใส่รหัสผ่านอย่างถูกต้อง
บันทึก: คุณสามารถกำหนดค่า Linux เพื่อป้องกันไม่ให้ผู้ใช้บางรายสามารถใช้คำสั่ง sudo ได้