从init.d自动启动一个守护进程

我安装了vnstats来查看带宽统计信息,我复制了一个init.d文件tempalte,我把它放在init.d目录下,它可以正常访问这个文件并执行start / restart / status,但是这个文件应该在系统启动时自动启动,对吗? 它不启动,我该如何debugging呢? 如果系统启动后,我做init.d / vnstat然后启动。

我正在运行Centos 5

谢谢。

如果你用正确的语法编写一个init脚本,你可以把它变成一个服务:

chkconfig --add vnstats

之后,你可以打开或closures某些运行级别:

chkconfig --level 345 vnstats on

您还可以使用脚本本身声明的函数,使用service命令手动启动或停止服务。 例如,如果您的脚本有一个名为stop的函数,另一个名为start,则可以使用

service vnstats stopservice vnstats start

build议阅读: 官方文件

如果init.d有一个chkconfig设置,你可以chkconfig --add vnstat; chkconfig vnstat on chkconfig --add vnstat; chkconfig vnstat on

你应该真的按照以前的build议来为你的initfile添加一个chkconfig部分,但是如果你懒惰,想要解决这个问题,你可以像下面这样直接链接文件:

 ln -s /etc/init.d/vnstat /etc/rc3.d/S90vnstat 

如果你想追求chkconfigpath并且缺lesschkconfig软件包,请使用: yum install chkconfig