คำถามติดแท็ก su

คำสั่งสำหรับการแทนที่ผู้ใช้เช่นการบันทึกไปยังเซสชันเป็นผู้ใช้อื่น

2
'sudo su -' vs 'sudo -i' vs 'sudo / bin / bash' - เมื่อไหร่ที่มันจะใช้งานได้หรือมันจะสำคัญหรือไม่?
เมื่อฉันทำบางสิ่งที่ต้องพิมพ์รูทในหลายสิบครั้งติดต่อกันฉันชอบที่จะเปลี่ยนเซสชั่นของฉันเป็นเซสชันรูท ในบทเรียนต่างๆและคำแนะนำฉันได้ใช้บนอินเทอร์เน็ตที่ฉันเห็นsudo su, sudo su -, sudo -iและsudo /bin/bashถูกนำมาใช้เพื่อเปิดเซสชั่นราก แต่ฉันไม่ชัดเจนเกี่ยวกับความแตกต่างระหว่างเหล่านี้และเมื่อไหร่หรือว่าเรื่องที่แตกต่าง มีคนช่วยเคลียร์สิ่งนี้ให้ฉันได้ไหม
254 command-line  bash  sudo  su 

6
อะไรคือความแตกต่างระหว่าง "su", "sudo -s", "sudo -i", "sudo su"?
ฉันอ่านจากคู่มือแล้ว แต่ฉันไม่เห็นความแตกต่าง .. su - เปลี่ยน ID ผู้ใช้หรือกลายเป็น superuser sudo -s [command] -s(เชลล์) ตัวเลือกที่ทำงานเปลือกที่ระบุโดยตัวแปรสภาพแวดล้อม SHELL หากมีการตั้งหรือเปลือกที่ระบุไว้ใน passwd (5) หากระบุคำสั่งคำสั่งจะถูกส่งไปยังเชลล์เพื่อดำเนินการ มิฉะนั้นเชลล์แบบโต้ตอบจะถูกดำเนินการ sudo -i คำอธิบายหายไปในคู่มือ
148 sudo  su 


8
ฉันจะรันแอปพลิเคชันด้วย GUI ในฐานะผู้ดูแลระบบจากเซสชันผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบได้อย่างไร
ฉันกำหนดบัญชีผู้ใช้ 2 บัญชี: เป็นหนึ่งเดียวกับผู้ดูแลระบบสิทธิพิเศษ (กับsudoขวา) => adminuserช่วยให้เรียกว่า อันที่สองที่ไม่มีสิทธิ์ => ให้เรียกมัน และฉันจะกำหนดค่า autologin ให้กับผู้ใช้คนที่สองนี้ normalusernormaluser ดังนั้นเมื่อฉันเปิดnormaluserเซสชันและต้องการเรียกใช้แอปพลิเคชันที่มีสิทธิ์ของผู้ดูแลระบบ ฉันเปิดเทอร์มินัลCtrl+ Alt+ Tและ: su adminuser sudo anyapplication ... ใช้งานได้ดีโดยไม่ต้องออกจากnormaluserเซสชัน (ไม่จำเป็นต้องเปิดadminuserเซสชัน) แต่ฉันควรทำอย่างไรหากแอปพลิเคชันต้องทำงานด้วย GUI (Graphic User Interface) ฉันว่าเกี่ยวกับที่: su adminuser gksu anyapplication ... แต่ฉันได้รับ ** (gksu:9122): WARNING **: the connexion is closed No protocol specified No protocol …
33 sudo  gksu  su 

7
คำสั่ง su การพิสูจน์ตัวตนล้มเหลว
ฉันมีปัญหากับคำสั่ง su ฉันรู้รหัสผ่านของฉันและฉันพิมพ์อย่างถูกต้อง แต่suระบุว่าล้มเหลวในการตรวจสอบสิทธิ์ ดังนั้นฉันจึงตรวจสอบบนอินเทอร์เน็ตและจากนั้นเข้าสู่โหมดการกู้คืนและเปลี่ยนรหัสผ่านชื่อผู้ใช้ของฉันเป็นสิ่งที่ฉันเข้ามาก่อน แม้ตอนนี้ป้อนรหัสผ่านเดียวกันบนsuทำให้ฉันล้มเหลวการตรวจสอบ กรุณาแนะนำสิ่งที่ฉันทำผิด ???
33 command-line  su 

4
ทำไม sudo-s ดีกว่า sudo su
ฉันได้เห็นความคิดเห็นจำนวนมากที่นี่ในอูบุนตูถามเกี่ยวกับการตั้งค่าในการใช้มากกว่าsudo -ssudo su สำหรับฉันคำสั่งสองคำนั้นเหมือนกันทุกประการ แต่ทำไมsudo -sควรจะดีขึ้นหรือไม่
28 command-line  sudo  su 

1
วิธีการเรียกใช้คำสั่งในฐานะผู้ใช้ที่ปิดใช้งานการเข้าสู่ระบบ
ฉันกำลังพยายามใช้คำสั่ง su เพื่อเรียกใช้แอปพลิเคชันในฐานะผู้ใช้รายอื่น ในกรณีนี้ฉันพยายามเรียกใช้ irssi blah@ubuntu: su - [username] irssi (enter password) blah@ubuntu: (nothing happens) blah@ubuntu: su - [username] -c irssi (nothing) ฉันรัน gksu และตั้งค่าพารามิเตอร์เดียวกันและใช้งานได้และไม่ขอรหัสผ่านผู้ใช้ ปัญหาคืออะไร และฉันจะแก้มันได้อย่างไร ฉันควรทราบว่าผู้ใช้ถูกสร้างขึ้นเช่นนี้ adduser --system --disabled-login [username] ถ้ามันสร้างความแตกต่าง .... ถอนหายใจ
21 sudo  su 

7
ประโยชน์ของ sudo over su คืออะไร?
อะไรคือประโยชน์ที่แท้จริงที่ Ubuntu (หรือ Debian อนุพันธ์) บรรลุโดยการปิดใช้งานผู้ใช้รูท? ทุกที่ที่ฉันอ่านมีข้อความว่าเพื่อป้องกันความเสียหายโดยไม่ตั้งใจสำหรับผู้ใช้ที่ไม่มีประสบการณ์ ฉันต้องการที่จะรู้ว่าสิ่งที่แน่นอนเพราะsudoสามารถดำเนินการคำสั่งทั้งหมด (ที่ฉันรู้ / ใช้) ดังนั้นในกรณีใดรูทสามารถทำให้เกิดความเสียหายในขณะที่sudoไม่สามารถ? PS: ฉันรู้วิธีการsudoทำงาน
19 sudo  root  su 

2
อะไรคือความแตกต่างระหว่างการล็อกอินในฐานะผู้ใช้และการเปลี่ยนผู้ใช้โดยใช้ su ผ่านรูท
เมื่อคุณมีเซิร์ฟเวอร์บางจัดเรียงคุณสามารถเข้าถึงได้ผ่านเช่นssh user1@ipและคุณยังสามารถทำssh root@ipไปให้กับผู้ใช้รากของคุณมีสิทธิ์ su su user1แล้วไปที่ ในความคิดของฉันทั้งสองวิธีควรนำฉันไปสู่สภาพแวดล้อมผู้ใช้เดียวกัน (ในกรณีนี้ "user1") แต่จากประสบการณ์จริงของฉันมันไม่ได้เกิดขึ้นเพราะssh user1@ipมีสิ่งที่ติดตั้งอยู่ในsu user1นั้น ทำไมถึงเป็นอย่างนั้น?
17 ssh  sudo  su 


1
sudo su จะไม่เปลี่ยนผู้ใช้สำหรับ mysql
เมื่อคืนบนเซิร์ฟเวอร์ของฉันฉันได้: sudo su - mysql เพื่อเปลี่ยนเป็นผู้ใช้ mysql ดังนั้นฉันสามารถเรียกใช้ไคลเอนต์ mysql ซึ่งได้รับการตั้งค่าดังนั้นมันจะตรวจสอบจากบัญชี mysql เท่านั้น ฉันประสบความสำเร็จในการรันไคลเอนต์ mysql และทำการเปลี่ยนแปลงฐานข้อมูล ไม่มีอะไรเปลี่ยนแปลงบนเซิร์ฟเวอร์ข้ามคืน วันนี้ไม่มีอะไรที่ฉันพยายามจะทำให้ฉันเปลี่ยนเป็นผู้ใช้ mysql ดูเหมือนว่าจะประสบความสำเร็จได้รับข้อความเกี่ยวกับไม่มีไดเรกทอรีบ้าน แต่whoamiยังคงรายงานรหัสผู้ใช้ของฉันและพยายามที่จะเรียกใช้ mysql ยังคงล้มเหลว wade@snoopy:~$ sudo su - mysql [sudo] password for wade: No directory, logging in with HOME=/ wade@snoopy:~$ whoami wade wade@snoopy:~$ sudo su mysql wade@snoopy:~$ whoami wade wwilliam@snoopy:~$ sudo -s …
13 sudo  su 


3
แนวทางปฏิบัติที่ดีที่สุดเกี่ยวกับการใช้ sudo ในสคริปต์ทุบตี
ฉันมีสคริปต์ทุบตีที่ยาวและยาวซึ่งต้องรันคำสั่งจำนวนมากในขณะที่คำสั่งส่วนใหญ่จำเป็นต้องเรียกใช้ในฐานะผู้ใช้ทั่วไปก่อน sudo เพราะจะทำให้เจ้าของไฟล์ยุ่งเหยิงและเช่นนั้น ฉันมาด้วยวิธีการบางอย่าง แต่พวกเขาแต่ละคนมีปัญหาบางอย่าง วิธีที่ 1: การใช้ sudo ภายในไฟล์ #!/bin/bash sudo echo "I must be run by root" touch needsToBeOwnedByUser1 echo "needs to be run by user" sleep 1000 sudo echo "I, again, must be run by root" นี่จะดูดีจากวิธีการเขียนโค้ด sudoถูกเขียนก่อนที่จะมีคำสั่งไม่กี่คำที่รูทจริงต้องรันโดยรูท แต่ถ้าเวลาระหว่างการsudoโทรแต่ละsudoครั้งนานเกินไปขอรหัสผ่านอีกครั้ง นอกจากนี้หากการดำเนินการครั้งแรกของการsudoล้มเหลวเช่นเนื่องจากรหัสผ่านไม่ถูกต้องส่วนที่เหลือของสคริปต์จะยังคงดำเนินการ วิธีที่ 2: ใช้ sudo เพื่อโทรหาไฟล์จากนั้นเปลี่ยนกลับเป็นผู้ใช้ดั้งเดิมเมื่อต้องการ #!/bin/bash echo …
11 bash  sudo  su 

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