ฉันได้เห็นความคิดเห็นจำนวนมากที่นี่ในอูบุนตูถามเกี่ยวกับการตั้งค่าในการใช้มากกว่าsudo -s
sudo su
สำหรับฉันคำสั่งสองคำนั้นเหมือนกันทุกประการ แต่ทำไมsudo -s
ควรจะดีขึ้นหรือไม่
ฉันได้เห็นความคิดเห็นจำนวนมากที่นี่ในอูบุนตูถามเกี่ยวกับการตั้งค่าในการใช้มากกว่าsudo -s
sudo su
สำหรับฉันคำสั่งสองคำนั้นเหมือนกันทุกประการ แต่ทำไมsudo -s
ควรจะดีขึ้นหรือไม่
คำตอบ:
ฉันคิดว่าsudo -s
ไม่ "ดีกว่า" มันแตกต่างกัน
sudo -s
เก็บไดเรกทอรี $ HOME ของคุณดังนั้นเมื่อคุณเริ่มโปรแกรมพวกเขาจะใช้ไฟล์ config (และไม่ใช่ของ root) ข้อเสีย: พวกเขายังสามารถเปลี่ยนความเป็นเจ้าของไฟล์ของคุณในไดเรกทอรี $ HOME ตัวอย่างทั่วไปคือ.Xauthority
ไฟล์ แต่ฉัน ไม่เคยประสบปัญหากับสิ่งนั้น
sudo su
หรือ sudo -i
โปรแกรมจะใช้โฮมไดเร็กทอรีของรูทและไฟล์กำหนดค่า สิ่งนี้อาจใช้งานง่ายกว่า แต่ก็หมายความว่าจะไม่ใช้การกำหนดค่าใด ๆ ที่คุณอาจตั้งค่าไว้สำหรับตัวคุณเอง (นามแฝงประวัติทุบตี ... )
เพราะsudo -s
จะไม่เปลี่ยนตัวแปรสภาพแวดล้อมของคุณโดยเฉพาะซึ่งจะอยู่$HOME
HOME=/home/USER
หากคุณใช้sudo su
สิ่งนี้จะเปลี่ยนไปHOME=/root
ซึ่งอาจมีผลข้างเคียงด้านลบเมื่อโปรแกรมที่คุณเริ่มพยายามเข้าถึงไดเรกทอรีหลักของผู้ใช้
ดังนั้นโดยทั่วไปมันก็เหมือนsudo
เทียบกับgksudo
เมื่อใช้โปรแกรมกราฟิก
นอกเหนือจากความแตกต่างที่กล่าวถึงแล้วกับตัวแปรสภาพแวดล้อมฉันพบว่าsudo su
โง่และสิ้นเปลืองเพราะคุณกำลังขอsudo
ให้เรียกใช้su
ในฐานะรูทและขอให้มันรันเชลล์เป็นรูท เหตุใดจึงขอให้โปรแกรมถามโปรแกรมให้เชลล์รูทแก่คุณเมื่อคุณสามารถให้โปรแกรมแรกให้เชลล์นั้นแก่คุณได้ มันมีความหมายในทางปฏิบัติหรือไม่? ไม่ฉันแค่เพ้อเจ้อ
sudo su
เพื่อเป็นรูทใช่ไปsudo -i
เลยตัวอย่างเช่น sudo su - myuser
แต่จะช่วยเหลือเมื่อคุณต้องการที่จะกลายเป็นผู้ใช้ที่แตกต่างกัน
sudo -i
จะเปลี่ยนเป็น/root
ไดเรกทอรีและsudo su
จะอยู่ในไดเรกทอรีที่คุณอยู่
sudo -u myuser
@hggdh,
ฉันจะไม่เห็นด้วยกับคำตอบอื่น ๆ เมื่อพิจารณากรณีเมื่อคุณต้องการเข้าสู่ระบบในฐานะผู้ใช้ที่ไม่มีเปลือก เป็นกรณีที่พบบ่อยมากกับผู้ใช้ที่ได้รับมอบหมายให้บริการ
การใช้ "sudo su" จะเริ่มเชลล์ที่ระบุโดยผู้ใช้ อย่างไรก็ตามในกรณีของผู้ใช้ที่กำหนดให้กระบวนการเซิร์ฟเวอร์เชลล์คือ / usr / bin / false และการบันทึกจะล้มเหลว แต่คุณควรป้อนเป็น:
sudo -sHu <server-user>
ที่จะนำคุณเข้าสู่ระบบและ cd ไปยังเส้นทางบ้านแม้ว่าผู้ใช้จะไม่ได้กำหนดเชลล์
sudo -i
หรือsudo su
ดีกว่าsudo -s
ด้วยเหตุผลที่กล่าวถึงที่นี่: ubuntuforums.org/showpost.php?p=6188826&postcount=4นอกจากนี้: นี่เป็นสิ่งที่ซ้ำซ้อนของsuperuser.com/questions/29/…