我做了很多研究,但没有发现任何能真正回答我问题的东西。
我编写了一个bash脚本,它自动更改某些进程上的好值。这个脚本需要在启动时运行(我目前在启动应用程序中有它),并且需要suid权限才能真正地更改好的值。我用chmod尝试了一些东西,并将文件的所有权更改为root,但是似乎没有什么效果。当脚本运行时,我一直得到“拒绝许可”。
当我在终端中使用:sudo ./myfile手动启动它时,它运行良好,但在启动时不工作。
我在用Ubuntu
发布于 2014-02-10 16:28:23
首先,在/etc/init.d中复制您的脚本(用于基于红帽子的服务器,如centos)
chmod +x script.sh
chkconfig --add script.sh
chkconfig --level 0123456 script.sh on尝试:
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 发布于 2014-02-10 16:37:27
如果您在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标记是引导顺序的指示.但是如果您的脚本是基本脚本,则忽略警告并重新启动计算机。
https://stackoverflow.com/questions/21682536
复制相似问题