我一直在做很多研究,但没有发现任何真正回答我问题的内容。
我编写了一个bash脚本,可以自动更改某些进程的nice值。此脚本需要在启动时运行(我目前在启动应用程序中使用它)并且需要suid
权限才能实际更改nice值。我已经尝试了chmod的一些事情,并将文件的所有权更改为root,但似乎没有任何工作。当脚本运行时,我不断收到“权限被拒绝”。
我在终端中使用以下方式手动启动它时运行正常:sudo ./myfile
但在启动时启动时不起作用
我正在使用Ubuntu
答案 0 :(得分: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 TAGS丢失的警告,LSB TAGS是启动顺序的说明...... 但如果您的脚本是基本脚本,请忽略该警告并重新启动计算机。
答案 1 :(得分:0)
首先在/etc/init.d
中复制您的脚本
然后(对于基于redhat的服务器,如centos)
chmod +x script.sh
chkconfig --add script.sh
chkconfig --level 0123456 script.sh on
对于像ubuntu这样的Debian: 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