Ubuntu下设置服务自启动
一般/etc下可能还有/etc/rc.local,/etc/rc.sysinit文件,一般/etc/rc.local默认并不做什么实事,可能是系统留下的一个接口,供用户添加系统启动时执行的动作,它一般会执行在/etc/init.d/的后面,所以比较靠后。/etc/rc.sysinit在 Redhat9.0里做的事比较多,有点类似执行/etc/rcS.d/下面的动作。
系统执行完init之后,会首先执行/etc/rcS/下面的以S[0-9][0-9]init_script为命名的初始化(如果改为以K开头,便不会被执行了),执行顺序以S后面的两位数字的由小到大的顺序;
之后会去找/etc/inittab定义系统运行级别的配置文件,根据initdefault指定的默认运行级别,而执行/etc/rc[0-6].d/下的初始化。
ubuntu则没有采用Linux传统的这种方式,而换了另外一种方法,在执行完/etc/rcS/下面的初始化后,会去/etc/event.d /rc-default里找运行级别,这个脚本首先判断从启动内核的参数命令行中寻找类似single的字串,如果找到,则定义运行级别1,否则再去找 /etc/inittab,没有的话,则定义默认级别为2(可能是因为ubuntu主要是面向个人PC的桌面电脑,所以没有开启全功能多用户级别)。
添加一个服务:sudo update-rc.d srv_name defaults 99
删除一个服务 :sudo update-rc.d–f test remove
临时重启一个服务:/etc/init.d/srv_name restart
临时关闭一个服务:/etc/init.d/srv_name stop
临时启动一个服务:/etc/init.d/srv_name start
0:停机
1:单用户形式,只root进行维护
2:多用户,不能使用netfile system
3:完全多用户
5:图形化
4:安全模式
6:重启