Все, що мені потрібно зробити, це запустити певний сценарій як конкретний користувач, у якого 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---?