Выполняет ли выполнение sudo su и su root то же самое?

Каковы технические различия между ними? Единственное, что я заметил, это то, что

sudo su

требует, чтобы вы вводили свой собственный пароль (если вы не root)

Пока

su root

требуется ввести пароль root. Однако оба, похоже, регистрируют вас в учетной записи пользователя root.

5
задан 8 December 2011 в 15:03

8 ответов

Вторая команда не может быть выполнена в установке Ubuntu по умолчанию, где учетная запись root не включена.

Но предположим, что вы разблокировали учетную запись root, указав ему пароль, две команды я думаю, может отличаться только в среде и наборе переменных оболочки. Сравните выходные данные env в двух ситуациях и, возможно, также вывод set, чтобы увидеть различия.

4
ответ дан 25 May 2018 в 16:08

Вторая команда не может быть выполнена в установке Ubuntu по умолчанию, где учетная запись root не включена.

Но предположим, что вы разблокировали учетную запись root, указав ему пароль, две команды я думаю, может отличаться только в среде и наборе переменных оболочки. Сравните выходные данные env в двух ситуациях и, возможно, также вывод set, чтобы увидеть различия.

4
ответ дан 7 August 2018 в 20:12

Между ними есть тонкая разница. su root (который может быть сокращен до su) запускает команду su в качестве пользователя, который ее вызвал. sudo выполняет указанную команду (su) как root. Запуск su в качестве корня по существу не работает, хотя, вероятно, он запускает новую оболочку. Запуск sudo -i является более чистым (на мой взгляд) способом запуска sudo su.

Кроме того, как указывалось ранее, в установке Ubuntu по умолчанию отсутствует пароль root, поэтому вызывается su на сам будет терпеть неудачу.

7
ответ дан 25 May 2018 в 16:08
  • 1
    Просто пояснение. На самом деле это не так. Он проходит весь процесс su. Существует разница между sudo su и sudo bash. – user606723 8 December 2011 в 21:50

Еще одно отличие; команда 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 также позволяет вам решать, что могут сделать другие.

3
ответ дан 25 May 2018 в 16:08

sudo -i - это то, как вы это делаете, по крайней мере, с 11.00, не уверен, что раньше или после 12.04.

создает вашу среду вперед под UID другого пользователя. как было сказано ранее

0
ответ дан 25 May 2018 в 16:08

Еще одно отличие; команда 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 также позволяет вам решать, что могут сделать другие.

3
ответ дан 2 August 2018 в 02:21

sudo -i - это то, как вы это делаете, по крайней мере, с 11.00, не уверен, что раньше или после 12.04.

создает вашу среду вперед под UID другого пользователя. как сказано ранее

0
ответ дан 7 August 2018 в 20:12

sudo -i - это то, как вы это делаете, по крайней мере, с 11.00, не уверен, что раньше или после 12.04.

создает вашу среду вперед под UID другого пользователя. как сказано ранее

0
ответ дан 10 August 2018 в 08:35

Другие вопросы по тегам:

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