Skip to main content

Sudo ใน Linux คืออะไร?

พื้นฐาน Linux #1 - การใช้คำสั่งเบื้องต้น (เมษายน 2025)

พื้นฐาน Linux #1 - การใช้คำสั่งเบื้องต้น (เมษายน 2025)
Anonim

เมื่อคุณเรียกใช้แอ็พพลิเคชันผู้ดูแลระบบใน 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 ได้