ฉันสามารถใช้อะไรก็ได้โดยใช้sudo
; รหัสผ่านของฉันได้รับการยอมรับ แต่เมื่อใดก็ตามที่ฉันพยายามที่จะทำsu
จากเปลือกมันล้มเหลวด้วย:
su: รหัสผ่านไม่ถูกต้อง
ปัญหาคืออะไร
ฉันสามารถใช้อะไรก็ได้โดยใช้sudo
; รหัสผ่านของฉันได้รับการยอมรับ แต่เมื่อใดก็ตามที่ฉันพยายามที่จะทำsu
จากเปลือกมันล้มเหลวด้วย:
su: รหัสผ่านไม่ถูกต้อง
ปัญหาคืออะไร
คำตอบ:
su
หมายถึงผู้ใช้สำรองและถ้ามันถูกเรียกโดยไม่มีข้อโต้แย้งใด ๆ คุณจะกลายเป็น superuser ดังนั้นคุณต้องป้อนรหัสผ่านรูท
นี่เป็นเรื่องไร้ประโยชน์ถ้าคนจำนวนมากจำเป็นต้องใช้คำสั่งสำหรับการดูแลระบบหรือสิ่งที่คล้ายกันที่มีสิทธิ์ของผู้ใช้เพิ่มเติม คุณเพียงแค่ไม่ต้องการให้ผู้คนมีสิทธิ์ไม่ จำกัด โดยการแบ่งปันรหัสผ่านรูทเดียวกันทั้งหมด
วิธีแก้ปัญหาสำหรับปัญหาประเภทนี้คือsudo
(" ผู้ใช้สำรองทำ ") สิ่งนี้จะอนุญาตให้คุณระบุคำสั่งที่บางคนสามารถเรียกใช้และกำหนดสิทธิ์ได้ สำหรับsudo
คุณไม่จำเป็นต้องป้อนรหัสผ่านรูท แต่รหัสผ่านของผู้ใช้ที่พยายามเรียกใช้คำสั่ง sudo
การกระจายบางอย่างทำให้ผู้ใช้รูทปิดการใช้งานด้วยเหตุผลด้านความปลอดภัย นี่อาจเป็นเหตุผลหนึ่งที่คุณไม่สามารถใช้งานsu
ได้ ในกรณีนั้นการขอรับเชลล์ที่มีสิทธิ์ใช้รูทsudo -s
;-)
$ script
และ$ sudo script
? ผู้ใช้เหมือนกันในทั้งสองกรณี
sudo allows a permitted user to execute a command as the superuser or another user, as specified in the sudoers file.
- จาก man sudo โดยปกติสคริปต์จะถูกเรียกใช้ด้วยสิทธิ์พิเศษของรูท นั่นคือความแตกต่าง
คำสั่ง su ที่ไม่มีตัวเลือกจะใช้ค่าดีฟอลต์เพื่ออนุญาตให้คุณเป็นผู้ใช้รูท มันไม่ได้ถามรหัสผ่านของคุณ แต่เป็นรหัสผ่านรูท
คำสั่ง sudo จะถามรหัสผ่านของคุณเสมอ
sudo su -
ที่ที่เส้นประหมายถึงตั้งค่าสภาพแวดล้อมตามโปรไฟล์การเข้าสู่ระบบของผู้ใช้ (ในกรณีของรูท) สิ่งนี้มักจะเพิ่มความปลอดภัยของเส้นทางเล็กน้อย แต่ก็ยังไม่ได้รับการป้องกันecho hi > /dev/my_critical_filesystem