Как проверить текущего пользователя с помощью cfengine

Мы только начали с cfengine и хотим использовать текущее имя пользователя Ubuntu, вошедшего в систему, в наших скриптах.

"cur_user" string => execresult ("/ usr / bin / id -un", "noshell")

Это возвращает текущего пользователя. Но, как вы сейчас делаете, cfengine работает в фоновом режиме от имени пользователя root, что дает всегда один и тот же ответ, и это root.

Это что-то предопределенное, или вы, ребята, сейчас?

Kr,

Joeri

1 ответ

Как вы уже написали /usr/bin/id всегда возвращает идентификатор пользователя, который запускает текущий процесс. Поэтому использование этой команды в Cfengine всегда возвращает пользователя root (до тех пор, пока Cfengine работает от имени root).

Если вы хотите получить список всех зарегистрированных в данный момент пользователей, вы можете попробовать выполнить команду / usr / bin / who. Однако это не специфично для Cfengine, и вам нужно обработать вывод. Следует помнить, что в Linux или UNIX одновременно может быть зарегистрировано более одного пользователя.

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