คำสั่ง: sudo su -


35

ฉันเข้าใจในสิ่งที่su -ทำ

  • บันทึกคุณในรูทด้วยสภาวะแวดล้อมรูท
  • (ตรงข้ามกับsuที่บันทึกคุณในการรูทด้วยสภาพแวดล้อมของคุณ)

และฉันเข้าใจสิ่งที่sudoทำ

  • คุณเป็น root สำหรับคำสั่งเดียว

แต่ฉันไม่แน่ใจในสิ่งนี้: sudo su -

ทุกคนสนใจที่จะชี้แจง


2
StackOverflow ใช้สำหรับถามคำถามเกี่ยวกับการเขียนโปรแกรม เว็บไซต์ที่คุณกำลังมองหา (อย่างน้อยสำหรับคำถามนี้) คือ SuperUser.com

คำตอบ:


53

นอกจากสิ่งที่คุณพูดแล้วsuต้องใช้รหัสผ่านรูทและsudoต้องการรหัสผ่านผู้ใช้ของคุณ

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


1
+1 คำอธิบายที่ดี หากฉันกำหนดค่า sudo ฉันสามารถทำได้โดยไม่ต้องใช้รหัสผ่านหรือไม่? นั่นจะทำให้ su ต้องการ 'ไม่มีรหัสผ่าน'?
sixtyfootersdude

1
คำอธิบายที่ชัดเจน
Thiyagu ATR

4
โปรดทราบว่าsudo -iเป็นวิธีที่ค่อนข้างตรงไปกว่าในการทำสิ่งเดียวกัน
Sam Mason

7

หากคุณได้รับอนุญาต (การกำหนดค่าของ sudo) เพื่อใช้suคำสั่งมันจะถามคุณสำหรับรหัสผ่านของคุณและจากนั้นให้คุณเข้าสู่ระบบในฐานะ root


2

คำตอบสั้น ๆ : คุณจะได้รูทเชลล์

คำตอบยาว: มันแตกต่างจากการทำ 'su -' ภายในรูตเชลล์ เมื่อคุณออก (เช่น. Ctrl-D) จาก 'sudo su -' การดำเนินการของ sudo จะสิ้นสุดลง

พบกับ Debian Wheezy พร้อม htop:

'sudo su -' มีลูกของ 'su -' และ 'su -' มีลูกของ '-su'

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

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