Это типичный вариант использования sudo.
Вы микшируете, sudoчто позволяет запускать команды от имени другого пользователя и легко настраивается (вы можете выборочно указать, какой пользователь может выполнять какую команду от имени какого пользователя), а suкакой переключается на другого пользователя, если вы знаете пароль (или являетесь пользователем root). suвсегда запускает оболочку, написанную на /etc/passwd, даже если su -cиспользуется. Из-за этого suне совместимо с /usr/sbin/nologin.
Вы должны использовать
sudo -u secure /home/someuser/secure.script
Как sudoнастраивается вы можете контролировать , кто может использовать эту команду , и если он / она должен ввести пароль , чтобы запустить его. Вы должны отредактировать, /etc/sudoersиспользуя visudoдля этого. (Будьте осторожны при редактировании / etc / sudoers и всегда используйте visudo для этого. Синтаксис не тривиален, и одна ошибка может заблокировать вас от вашей учетной записи root.)
Эта строка в sudoers позволяет любому в группе somegroupзапускать команду как secure:
%somegroup ALL=(secure) /home/someuser/secure.script
Это позволяет любому в группе somegroupзапускать команду как secureбез ввода пароля:
%somegroup ALL=(secure) NOPASSWD: /home/someuser/secure.script
Это позволяет user1выполнить команду как secureбез ввода пароля:
user1 ALL=(secure) /home/someuser/secure.script
sudo su, см. Unix.stackexchange.com/questions/218169/…