Каковы технические различия между ними? Единственное, что я заметил, это то, что
sudo su
требует, чтобы вы вводили свой собственный пароль (если вы не root)
Пока
su root
требуется ввести пароль root. Однако оба, похоже, регистрируют вас в учетной записи пользователя root.
Вторая команда не может быть выполнена в установке Ubuntu по умолчанию, где учетная запись root не включена.
Но предположим, что вы разблокировали учетную запись root, указав ему пароль, две команды я думаю, может отличаться только в среде и наборе переменных оболочки. Сравните выходные данные env в двух ситуациях и, возможно, также вывод set, чтобы увидеть различия.
Вторая команда не может быть выполнена в установке Ubuntu по умолчанию, где учетная запись root
не включена.
Но предположим, что вы разблокировали учетную запись root
, указав ему пароль, две команды я думаю, может отличаться только в среде и наборе переменных оболочки. Сравните выходные данные env
в двух ситуациях и, возможно, также вывод set
, чтобы увидеть различия.
Между ними есть тонкая разница. su root (который может быть сокращен до su) запускает команду su в качестве пользователя, который ее вызвал. sudo выполняет указанную команду (su) как root. Запуск su в качестве корня по существу не работает, хотя, вероятно, он запускает новую оболочку. Запуск sudo -i является более чистым (на мой взгляд) способом запуска sudo su.
Кроме того, как указывалось ранее, в установке Ubuntu по умолчанию отсутствует пароль root, поэтому вызывается su на сам будет терпеть неудачу.
Еще одно отличие; команда sudo использует ваш пароль, и вы должны быть авторизованы в файле / etc / sudoers. Файл sudoers определяет, какие команды вы можете выполнять с помощью sudo. Команда su использует пароль ROOT. который должен быть известен.
В зависимости от параметров вы можете подобрать корневую среду или перенести ваш вперед.
Я использую «sudo bash» для получения корневой оболочки. Это почти идентично (может быть, я не уверен) для «sudo -i». Окружающая среда контролируется так: «sudo su - other_user» получает среду для other_user. Но «sudo su other_user» переносит вашу среду вперед под UID другого пользователя. Это означает, что ваши псевдонимы и т. Д. Будут доступны.
Кроме того, результаты аудита в журналах аудита различаются при использовании su по сравнению с sudo. Больше прослеживания с sudo. Наконец, для su вы вводите пароль root и испытываете боль в обслуживании. Если вы авторизуете людей с помощью sudo, вы просто обновляете файл sudoers, чтобы добавлять или удалять людей, и им нужно только помнить свой собственный пароль. Sudoers также позволяет вам решать, что могут сделать другие.
sudo -i - это то, как вы это делаете, по крайней мере, с 11.00, не уверен, что раньше или после 12.04.
создает вашу среду вперед под UID другого пользователя. как было сказано ранее
Еще одно отличие; команда sudo использует ваш пароль, и вы должны быть авторизованы в файле / etc / sudoers. Файл sudoers определяет, какие команды вы можете выполнять с помощью sudo. Команда su использует пароль ROOT. который должен быть известен.
В зависимости от параметров вы можете выбрать корневую среду или перенести свой вперед.
Я использую «sudo bash» для получения корневой оболочки. Это почти идентично (может быть, я не уверен) для «sudo -i». Окружающая среда контролируется так: «sudo su - other_user» получает среду для other_user. Но «sudo su other_user» переносит вашу среду вперед под UID другого пользователя. Это означает, что ваши псевдонимы и т. Д. Будут доступны.
Кроме того, результаты аудита в журналах аудита различаются при использовании su и sudo. Больше прослеживания с sudo. Наконец, для su вы вводите пароль root и испытываете боль в обслуживании. Если вы авторизуете людей с помощью sudo, вы просто обновляете файл sudoers, чтобы добавлять или удалять людей, и им нужно только помнить свой собственный пароль. Sudoers также позволяет вам решать, что могут сделать другие.
sudo -i - это то, как вы это делаете, по крайней мере, с 11.00, не уверен, что раньше или после 12.04.
создает вашу среду вперед под UID другого пользователя. как сказано ранее
sudo -i - это то, как вы это делаете, по крайней мере, с 11.00, не уверен, что раньше или после 12.04.
создает вашу среду вперед под UID другого пользователя. как сказано ранее