Команда: sudo su -

116683
sixtyfootersdude

Я понимаю что su -делает

  • регистрирует вас в root с корневой средой
  • (в отличие от того, suчто входит в систему с правами root)

И я понимаю, что sudoделает

  • вы болеете за одну команду

Но я не уверен, что это делает: sudo su -

Любой желающий уточнить

34
StackOverflow предназначен для того, чтобы задавать вопросы, связанные с программированием. Сайт, который вы ищете (по крайней мере, для этого вопроса) - SuperUser.com 14 лет назад 2

3 ответа на вопрос

50
Tyler McHenry

В дополнение к тому, что вы сказали, suтребуется пароль root и sudoпароль пользователя

Поэтому sudo su -вы попадете в корневую среду, но попросите ввести пароль пользователя вместо пароля root (как только sudo предоставит вам привилегии root, его su -можно будет запускать без пароля).

+1 хорошее объяснение. Если я настрою свой sudo, могу ли я сделать так, чтобы он не требовал пароля? Что заставило бы su требовать «без пароля»? sixtyfootersdude 14 лет назад 1
четкое объяснение Thiyagu ATR 10 лет назад 1
обратите внимание, что `sudo -i` - это несколько более прямой способ сделать то же самое Sam Mason 10 лет назад 3
7
tangens

Если вам разрешено (настройка sudo) использовать suкоманду, она запрашивает ваш пароль, а затем регистрирует вас как root.

2
C.L.

Short answer: you will get a root shell.

Long answer: it is different from doing 'su -' within a root shell. Once you exit (eg., Ctrl-D) from 'sudo su -', the execution of sudo will end.

Observed on Debian Wheezy with htop:

'sudo su -' has a child of 'su -', and 'su -' has a child of '-su'.

As mentioned above, root user can do 'su -' without entering password, so doing 'su -' inside of a root shell, you will have two different root shell processes. ending the inner one will let you return back to the outer one.

Похожие вопросы