2014-02-10 85 views
0

我一直在做很多研究,但還沒有找到任何真正解決我的問題的東西。給一個bash腳本suid權限

我寫了一個bash腳本,可以自動更改某些進程的nice值。這個腳本需要在啓動時運行(我目前在啓動應用程序中),並且需要suid權限才能真正更改nice值。我已經嘗試了一些與chmod的東西,並將文件的所有權改爲root,但似乎沒有任何工作。腳本運行時,我不斷收到「權限被拒絕」。

它運行正常,當我使用手動啓動它的終端:sudo ./myfile 但在啓動時啓動時

我使用Ubuntu

回答

0

起初複製你的腳本/etc/init.d 則不起作用(紅帽基於服務器的centos等)

chmod +x script.sh 
chkconfig --add script.sh 
chkconfig --levelscript.sh on 

對於Debian基於像Ubuntu: help help2 help3

嘗試:

cp /path/to/your/script.sh /etc/init.d/ 
chmod +x /etc/init.d/yourscript.sh 
update-rc.d yourscript defaults 

運行級別是任務的邏輯組。傳統上你有五個運行級別。

0 boot 
1 single user 
2 not used 
3 multiuser 
4 not used 
5 gui 
6 reboot 
+0

我剛剛編輯它到我原來的帖子,但我運行Ubuntu的。 – user244985

+0

我回答並完成了它 – MLSC

+0

似乎在工作!謝謝 – user244985

1

如果你是於Debian/Ubuntu,請執行下列操作:

cp /path/to/your/script.sh /etc/init.d/ 

chmod +x /etc/init.d/yourscript.sh 

update-rc.d yourscript defaults 

在這裏,我想你應該得到那個LSB標籤缺少一個警告,LSB標籤引導順序的說明... 但如果您的腳本是基本腳本,請忽略警告並重新啓動計算機。