โดยค่าเริ่มต้น Ubuntu ไม่ได้ตั้งค่ารหัสผ่านรูทดังนั้นคุณจะไม่สามารถเข้าสู่ระบบในฐานะรูทได้ แต่คุณจะได้รับความสามารถในการทำงานด้วยสิทธิ์ superuser โดยใช้ sudo
ฉันตอบคำถามที่คล้ายกันมาก่อน
ในขณะที่คุณสามารถสร้างรหัสผ่านสำหรับบัญชีรูทที่อนุญาตให้คุณเข้าสู่ระบบด้วยรูทsu
แต่นี่ไม่ใช่วิธีการทำสิ่ง "Ubuntu" ทั่วไป อูบุนตูคาดหวังว่าคุณจะใช้งานsudo
แทน
ใช้ sudo
Sudo เป็นอีกทางเลือกหนึ่งในการให้รหัสผ่านแก่ผู้ใช้เพื่อทำหน้าที่ผู้ใช้ระดับสูง ในการติดตั้งอูบุนตูเริ่มต้นผู้ที่ติดตั้งระบบปฏิบัติการจะได้รับสิทธิ์ "sudo" เป็นค่าเริ่มต้น
ใครก็ตามที่ได้รับอนุญาต "sudo" อาจดำเนินการบางอย่าง "เป็น superuser" โดยรอsudo
คำสั่งล่วงหน้า ตัวอย่างเช่นหากต้องการใช้apt-get dist-upgrade
เป็น superuser คุณสามารถใช้:
sudo apt-get dist-upgrade
โดยค่าเริ่มต้น sudo จะขอรหัสผ่านบัญชีของคุณเองเมื่อดำเนินการนี้ ช่วยรักษาความปลอดภัย สิ่งนี้จะถูกจดจำเป็นเวลาสองสามนาทีดังนั้นหากคุณมีงานสองสามอย่างที่ต้องทำกับ sudo ระบบจะขอรหัสผ่านของคุณในครั้งแรกเท่านั้น
คุณจะเห็นการใช้งานของ sudo สวยมากทุกที่ที่คุณอ่านบทช่วยสอนเกี่ยวกับ Ubuntu บนเว็บ มันเป็นทางเลือกในการทำสิ่งนี้
su
apt-get dist-upgrade
exit
ประโยชน์ที่ได้รับ
ด้วย sudo คุณจะต้องเลือกล่วงหน้าว่าผู้ใช้คนใดที่สามารถเข้าถึง sudo ได้ พวกเขาไม่จำเป็นต้องจำรหัสผ่านรูทเนื่องจากพวกเขาใช้รหัสผ่านของตัวเอง หากคุณมีผู้ใช้หลายคนคุณสามารถเพิกถอนการเข้าถึง superuser เพียงแค่ลบการอนุญาต sudo โดยไม่ต้องเปลี่ยนรหัสผ่านรูทและแจ้งรหัสผ่านใหม่ให้ทุกคนทราบ คุณสามารถเลือกได้ว่าคำสั่งใดที่ผู้ใช้ได้รับอนุญาตให้ใช้งานโดยใช้ sudo และห้ามใช้คำสั่งใดสำหรับผู้ใช้นั้น และในที่สุดหากมีการละเมิดความปลอดภัยในบางกรณีอาจทำให้การตรวจสอบบัญชีแสดงว่าบัญชีผู้ใช้ใดถูกบุกรุก
การไม่มีรหัสผ่านรูททำให้การโจมตีแบบเดรัจฉานบังคับในบัญชีรูทเป็นไปไม่ได้: สิ่งนี้เกี่ยวข้องถ้าคุณอนุญาตให้ล็อกอินผ่าน SSH ผู้โจมตีจะต้องทราบชื่อบัญชีท้องถิ่นแทน
Sudo ทำให้คำสั่งเดียวง่ายขึ้นด้วยสิทธิ์ superuser กับsu
คุณอย่างถาวรลดลงเปลือก superuser ซึ่งจะต้องออกมาใช้หรือexit
logout
สิ่งนี้สามารถนำไปสู่คนที่อยู่ในเปลือก superuser ได้นานกว่าความจำเป็นเพียงเพราะสะดวกกว่าการออกจากระบบและอีกครั้งในภายหลัง
รับรูตเชลล์
ด้วย sudo คุณยังคงมีตัวเลือกในการเปิดเชลล์ superuser แบบโต้ตอบ (ถาวร) ด้วยคำสั่ง:
sudo su
... และสิ่งนี้สามารถทำได้โดยไม่ต้องใช้รหัสผ่านรูทใด ๆ เพราะsudo
ให้สิทธิ์ superuser แก่su
คำสั่ง
และในทำนองเดียวกันแทนsu -
สำหรับเปลือกเข้าสู่ระบบที่คุณสามารถใช้หรือแม้กระทั่งsudo su -
sudo -i
อย่างไรก็ตามเมื่อทำเช่นนั้นคุณต้องระวังว่าคุณทำตัวเป็น superuser สำหรับทุกคำสั่ง เป็นหลักการด้านความปลอดภัยที่ดีที่จะไม่คงอยู่ในฐานะผู้ใช้ระดับสูงนานกว่าที่จำเป็นเพียงเพื่อลดความเป็นไปได้ที่จะก่อให้เกิดความเสียหายต่อระบบโดยไม่ตั้งใจ (โดยที่คุณไม่สามารถทำได้
เพียงชี้แจงให้ชัดเจนคุณสามารถให้รหัสผ่านแก่ผู้ใช้รูทเพื่ออนุญาตให้เข้าสู่ระบบในฐานะรูทหากคุณต้องการทำสิ่งนี้โดยเฉพาะแทน ฉันแค่อยากจะบอกให้คุณรู้เกี่ยวกับแบบแผนของ Ubuntu ที่ชอบsudo
และบอกให้คุณรู้ว่ามีทางเลือกอื่น