Як я можу вийти із "sudo su"?


90

Я використовую sudo suдля початку mysqlі виконую з ним деякі домашні завдання.

Коли я закінчую mysql(або будь-яку іншу команду), тоді я все ще в sudo.

Як я "вийду з системи", щоб моє підказка змінилася назад з #на $?


6
Використовуйте команду exit ..

11
exitабо простий Ctrl + D. Пам’ятаю, коли я вперше виявив останнє, і моє життя стало в десять разів простішим :-D.
Даніель Андерссон

1
Крім хороших відповідей нижче, залишається один момент: якщо вам потрібна оболонка з кореневимиsudo -i
правами

Відповіді:


110

Вам не потрібно використовувати sudoі suразом - suперемикає ваш обліковий запис користувача (без аргументів він переключає вас на root). sudoпросто підвищує ваші привілеї, щоб викорінити поточну команду.

Рекомендується використовувати sudoзамість suможливості, а для повернення до звичайного облікового запису після виклику suпросто скористайтесь exitкомандою


9
sudo suперейде до кореневого акаунта, навіть якщо ви не знаєте пароля root.
Роб

1
Там є відмінність між sudo su, sudoі su, і це варто знати ці відмінності з міркувань безпеки , але і для вашої зручності. johnkpaul.tumblr.com/post/19841381351/su-vs-sudo-su-vs-sudo-ui
Джефф Веллінг

@Rob, але все ж він не може встановити середовище потрібним способом - використовуйте sudo -iзамість цього (в Ubuntu кореневий обліковий запис вимкнено за замовчуванням = немає дійсного пароля)
guntbert

2
@Rob або sudo -sза ами пекло.
Джоел Меллон

Тут нічого не пропонується
Totty.js

16

Використовуйте

su username

щоб повернутися до рівня користувача (або іншого користувача)

Або просто натисніть Ctrl-D, щоб вийти з кореня


7
ви не хочете більше заглиблюватись ... Ctrl-D або існувати або виходити - це хороший вибір
Рам,

@Ram - ти зробив важливий момент. Але у вашому коментарі є помилка друку. Це повинно бути exit(не існувати).
MountainX

typo дійсно @MountainX ... CTRL-D, вихід, вихід тощо
Рам

Це єдина відповідь, яка насправді працює.
Totty.js

1
@ Totty.js Тоді ви suнеправильно використовуєте .
Нік Хартлі

6
  • logout якщо використовується sudo su -
  • exit якщо використовується sudo -s

0

Немає ніяких причин використовувати sudoабо suзапускати клієнт командного рядка MySQL. Він за замовчуванням використовує вашого поточного користувача Unix як свого користувача MySQL, але замість цього вам слід передати його користувачеві, до якого ви хочете підключитися як аргументи:

$ mysql -u root # connect as MySQL's root user (without password)
$ mysql -u root -p # -p means prompt for a password

Сподіваємось, у вашому кореневому обліковому записі MySQL є пароль, і вам потрібно буде використовувати другу форму.

Крім цього, якщо вам потрібно запустити MySQL під sudo (наприклад, для дозволів на файли), зробіть це так:

$ sudo -u unix-user mysql -u mysql-user -p

Ви можете залишати аргументи (sudo за замовчуванням для користувача root, MySQL за замовчуванням використовувати того самого користувача, що і sudo).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.