2013-12-18 37 views
0

对此有一些问题。我有以下脚本:如何在启动时不以root身份运行程序?

cd /home/program 
screen -S program -d -m ./program.sh 

在/etc/init.d中,它在启动时运行。

哪些工作正常,但它作为根运行它,我不希望它以root身份运行。我试图使用su programs-user然后做屏幕,但它只打开屏幕,没有别的。我认为这是一个权限问题,但我不完全确定,因为我不熟悉linux。

编辑:这就是我现在
su username -c "screen -S screen_name -d -m bash -c 'cd /home/user && ./program'"
它不会做任何事情。

编辑2:我猜因为用户没有权限运行屏幕,不知道如何给予该权限。

EDIT3:好吧,当我的用户名其实它是工作登录,但是当我键入screen -ls为根,我不看屏幕

回答

0
#!/bin/bash 

screen -dmS screen_name 
screen -S screen_name-p 0 -X stuff $'su username\n' 
screen -S screen_name-p 0 -X stuff $'cd /home/username\n' 
screen -S screen_name-p 0 -X stuff $'./program\n' 
相关问题