Как я могу иметь сценарии вызова deamon от имени другого пользователя?

Я настраиваю сервер, подключенный к ИБП. Управление ИБП осуществляется через apcupsd и он вызывает некоторые сценарии, когда происходит отключение электроэнергии и когда ситуация возвращается к нормальной.

На сервере работают несколько виртуальных машин, запущенных пользователем vboxuser, Я хотел бы аккуратно остановить виртуальные машины, когда происходит сбой питания, и я могу сделать это, работая vboxmanage,

Как я могу запустить команду как vboxuser из сценариев, называемых apcupsd?

1 ответ

Решение

Если apcupsd скрипты запускаются с правами суперпользователя, тогда вы можете просто запускать команды выключения в скрипте, используя sudo:

/path/to/sudo -u vboxuser /path/to/shutdown-command args

(т.е. создайте скрипт оболочки, который запускается демоном apc, и поместите в него все команды отключения sudo)

Если сценарии не запускаются от имени пользователя root, вы все равно сможете использовать sudo, настроив его так, чтобы соответствующий пользователь мог запускать команды выключения от имени vboxuser. Если это так, то вам, возможно, придется заглянуть в справочные страницы sudo или дождаться более подробного ответа, который охватывает этот вопрос, поскольку я никоим образом не эксперт по sudo.

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