Имея некоторые проблемы с этим. У меня есть следующий сценарий:Как запустить программу при запуске не как root?
cd /home/program
screen -S program -d -m ./program.sh
В /etc/init.d и запускается при запуске.
Что работает нормально, но он запускает его как root, я не хочу, чтобы он выполнялся как root. Я попытался использовать su programs-user
, а затем сделал экран, но он только открывает экран и ничего больше. Я думаю, что это вопрос с разрешениями, но я не совсем уверен, поскольку я не знаком с Linux.
Edit: это то, что я получил прямо сейчас
su username -c "screen -S screen_name -d -m bash -c 'cd /home/user && ./program'"
И это ничего не делать.
Редактировать 2: Я предполагаю, что у пользователя нет разрешения на запуск экрана, не знаю, как это разрешение.
Edit3: Хорошо, когда я войти в систему с именем пользователя это на самом деле работает, но когда я типа screen -ls
как корень, я не вижу на экранах