เมื่อใดที่ su และ sudo ใช้รหัสผ่านที่แตกต่างกัน


12

ฉันสามารถใช้อะไรก็ได้โดยใช้sudo; รหัสผ่านของฉันได้รับการยอมรับ แต่เมื่อใดก็ตามที่ฉันพยายามที่จะทำsuจากเปลือกมันล้มเหลวด้วย:

su: รหัสผ่านไม่ถูกต้อง

ปัญหาคืออะไร

คำตอบ:


22

suหมายถึงผู้ใช้สำรองและถ้ามันถูกเรียกโดยไม่มีข้อโต้แย้งใด ๆ คุณจะกลายเป็น superuser ดังนั้นคุณต้องป้อนรหัสผ่านรูท

นี่เป็นเรื่องไร้ประโยชน์ถ้าคนจำนวนมากจำเป็นต้องใช้คำสั่งสำหรับการดูแลระบบหรือสิ่งที่คล้ายกันที่มีสิทธิ์ของผู้ใช้เพิ่มเติม คุณเพียงแค่ไม่ต้องการให้ผู้คนมีสิทธิ์ไม่ จำกัด โดยการแบ่งปันรหัสผ่านรูทเดียวกันทั้งหมด

วิธีแก้ปัญหาสำหรับปัญหาประเภทนี้คือsudo(" ผู้ใช้สำรองทำ ") สิ่งนี้จะอนุญาตให้คุณระบุคำสั่งที่บางคนสามารถเรียกใช้และกำหนดสิทธิ์ได้ สำหรับsudoคุณไม่จำเป็นต้องป้อนรหัสผ่านรูท แต่รหัสผ่านของผู้ใช้ที่พยายามเรียกใช้คำสั่ง sudo

การกระจายบางอย่างทำให้ผู้ใช้รูทปิดการใช้งานด้วยเหตุผลด้านความปลอดภัย นี่อาจเป็นเหตุผลหนึ่งที่คุณไม่สามารถใช้งานsuได้ ในกรณีนั้นการขอรับเชลล์ที่มีสิทธิ์ใช้รูทsudo -s;-)


5
ขอแนะนำให้ทำบิตสุดท้ายนั้นเป็นsudo su -ที่ที่เส้นประหมายถึงตั้งค่าสภาพแวดล้อมตามโปรไฟล์การเข้าสู่ระบบของผู้ใช้ (ในกรณีของรูท) สิ่งนี้มักจะเพิ่มความปลอดภัยของเส้นทางเล็กน้อย แต่ก็ยังไม่ได้รับการป้องกันecho hi > /dev/my_critical_filesystem
msw

aaah ลืมคนนี้ :-) ขอบคุณสำหรับการเพิ่ม!
echox

@echox: แล้วมีความแตกต่างระหว่าง$ scriptและ$ sudo script? ผู้ใช้เหมือนกันในทั้งสองกรณี
Lazer

sudo allows a permitted user to execute a command as the superuser or another user, as specified in the sudoers file.- จาก man sudo โดยปกติสคริปต์จะถูกเรียกใช้ด้วยสิทธิ์พิเศษของรูท นั่นคือความแตกต่าง
echox

1
@Chris: น่าเสียดายที่จำเป็นต้องมีหากคุณต้องการสืบทอดสภาพแวดล้อมของผู้ใช้รูททั้งหมดรวมถึง PATH บังเอิญฉันเพิ่งค้นพบว่า "sudo -s" ซึ่งฉันแสดงความคิดเห็นไว้ด้านบน แต่ตอนนี้ถูกลบออกจะเทียบเท่ากับ "sudo su" โดยไม่มีเส้นประ: ไม่มีการเปลี่ยนแปลง CWD ไม่มีการเปลี่ยนแปลงกับ PATH
Warren Young

7

คำสั่ง su ที่ไม่มีตัวเลือกจะใช้ค่าดีฟอลต์เพื่ออนุญาตให้คุณเป็นผู้ใช้รูท มันไม่ได้ถามรหัสผ่านของคุณ แต่เป็นรหัสผ่านรูท

คำสั่ง sudo จะถามรหัสผ่านของคุณเสมอ


2
เป็นหมายเหตุด้านข้างหากคุณใช้ Ubuntu โดยค่าเริ่มต้นจะมีการล็อครหัสผ่านรูทดังนั้นคุณอาจไม่ทราบรหัสผ่านรูทhelp.ubuntu.com/community/RootSudo
phunehehe

3
"คำสั่ง sudo จะถามรหัสผ่านของคุณเสมอ" ที่จริงแล้วสามารถกำหนดค่าได้ อาจถูกกำหนดค่าให้ถามรหัสผ่านรูทหรือรหัสผ่านของผู้ใช้เป้าหมาย (หรือไม่มีรหัสผ่านเลย)
sepp2k
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.