Все, что мне нужно сделать, - это запустить определенный скрипт от имени конкретного пользователя, для которого nologin/falseоболочка указана в /etc/passwd.
Я бы запустил скрипт от имени пользователя root, и он должен работать от имени другого пользователя. Бег:
~# su -c "/bin/touch /tmp/test" testuser
будет работать, но мне нужна корректная оболочка для тестируемого. Я знаю, что могу отключить пароль passwd -d testuserи оставить оболочку /bin/bashтаким образом, что бы немного обезопасить себя, но мне нужна nologin/falseоболочка.
По сути, мне нужно то crontab, что нужно делать, когда мы настраиваем задания на выполнение от имени конкретного пользователя, независимо от того, есть ли у него nologin/falseоболочка.
PS Я нашел этот поток, выполняя команду от имени пользователя nologin , но я понятия не имею, как выполнить concatenateкоманду su -s /bin/sh $userдля скрипта, который мне нужно запустить.
root:root -rwsr-x---?