Как получить имя пользователя, который выполнил сценарий удара как sudo?

Все должно быть прекрасным. Единственная проблема, о которой я знаю, состоит в том, что установщик LMDE не дает Вам опцию использования разделов на втором диске. Посмотрите здесь для обсуждения проблемы.

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

Тем не менее, LMDE является большим, и я настоятельно рекомендую его!

17
04.11.2014, 17:39
2 ответа

Я не уверен, насколько это стандартно, но по крайней мере в системах Ubuntu sudo устанавливает следующие переменные окружения (среди прочих - см. раздел ENVIRONMENT sudo manpage):

   SUDO_UID        Set to the user ID of the user who invoked sudo

   SUDO_USER       Set to the login of the user who invoked sudo

например,

steeldriver@lap-t61p:~$ sudo sh -c 'whoami'
root
steeldriver@lap-t61p:~$ sudo sh -c 'echo $SUDO_USER'
steeldriver
28
27.01.2020, 19:46

Если вы хотите, чтобы он работал и без sudo, используйте ${SUDO_USER:-$USER}. Например:

printf '%s\n' "${SUDO_USER:-$USER}"

Explanation

${var:-val} будет расширяться до $var, если он не установлен или пуст, в этом случае он будет расширяться до val.

.
9
27.01.2020, 19:46

Теги

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