Я понимаю что su -
делает
- регистрирует вас в root с корневой средой
- (в отличие от того,
su
что входит в систему с правами root)
И я понимаю, что sudo
делает
- вы болеете за одну команду
Но я не уверен, что это делает: sudo su -
Любой желающий уточнить
Ответы:
В дополнение к тому, что вы сказали,
su
требуется пароль root иsudo
пароль пользователяПоэтому
sudo su -
вы попадете в корневую среду, но попросите ввести пароль пользователя вместо пароля root (как только sudo предоставит вам привилегии root, егоsu -
можно будет запускать без пароля).источник
sudo -i
это несколько более прямой способ сделать то же самоеЕсли вам разрешено (настройка sudo) использовать эту
su
команду, она запрашивает ваш пароль, а затем регистрирует вас как root.источник
Краткий ответ: вы получите корневую оболочку.
Длинный ответ: это отличается от выполнения 'su -' внутри корневой оболочки. Как только вы выходите (например, Ctrl-D) из 'sudo su -', выполнение sudo заканчивается.
Наблюдаемый на Debian Wheezy с htop:
'sudo su -' имеет дочернего элемента от 'su -', а 'su -' имеет дочернего элемента от '-su'.
Как упоминалось выше, пользователь root может делать 'su -' без ввода пароля, поэтому, выполняя 'su -' внутри корневой оболочки, вы будете иметь два разных процесса корневой оболочки. окончание внутреннего позволит вам вернуться к внешнему.
источник