chkconfig设置开机自启动的原理

开机自启动服务的原理
$sudo chkconfig --level 3 sshd on #手动设置3级别的开机自启动 [leiyf@leiyangfeng ~]
#手动设置3级别的开机自启动,实质是在对应运行级别的目录rc3.d下创建一个sshd的启动脚本(/etc/init.d/sshd)的软连接S55sshd,如下:
$ls -l /etc/rc.d/rc3.d/S55sshd
lrwxrwxrwx.
1 root root 14 Oct 3 11:06 /etc/rc.d/rc3.d/S55sshd -> ../init.d/sshd
而设置3级别的开机关闭,如下:

$sudo chkconfig --level 3 sshd off
[leiyf@leiyangfeng ~]
$ls -l /etc/rc.d/rc3.d/K25sshd
lrwxrwxrwx. 1 root root 14 Oct 3 11:12 /etc/rc.d/rc3.d/K25sshd -> ../init.d/sshd

所以也可以通过修改软连接的方式,设置开机启动的方式,如下:

$chkconfig --list sshd
sshd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[leiyf@leiyangfeng ~]
$ls -l /etc/rc.d/rc3.d/ | grep sshd
lrwxrwxrwx. 1 root root 14 Oct 3 11:25 K25sshd -> ../init.d/sshd

[leiyf@leiyangfeng ~]
$sudo \rm -f /etc/rc.d/rc3.d/K25sshd ; sudo ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S55sshd
[leiyf@leiyangfeng ~]
$ls -l /etc/rc.d/rc3.d/S55sshd
lrwxrwxrwx. 1 root root 16 Oct 3 11:27 /etc/rc.d/rc3.d/S55sshd -> /etc/init.d/sshd
[leiyf@leiyangfeng ~]
$chkconfig --list sshd
sshd 0:off 1:off 2:off 3:on 4:off 5:off 6:off

其中K55(关闭),S55(开启),在/etc/init.d/sshd中设置的,如下:

$sed -n '/55/p' /etc/init.d/sshd
# chkconfig: 2345 55 25

 

将服务或者脚本添加到系统服务中

自建脚本内容,如下:

$sudo vim /etc/init.d/leiyf
#!/bin/bash
#
# leiyfd          Start up the leiyf server daemon
#
# chkconfig: 2345 66 44

echo "Knowledge has no limit"

  添加可执行权限

sudo chmod +x /etc/init.d/leiyf

  添加到系统服务

$sudo chkconfig --add leiyf

此时可以看到在脚本leiyf中定义的2345级别到运行了,如下:

$sudo chkconfig --list leiyf
leiyf           0:off   1:off   2:on    3:on    4:on    5:on    6:off

关闭在3级别的开机启动,如下:

$sudo chkconfig --level 3 leiyf off
[leiyf@leiyangfeng ~]
$sudo chkconfig --list leiyf       
leiyf           0:off   1:off   2:on    3:off   4:on    5:on    6:off

可以看到创建了如下的软链接,链接的名称也是在脚本(leiyf)中,定义:# chkconfig: 2345 66 44的44,如下:

$ls -l /etc/rc.d/rc3.d/ | grep leiyf
lrwxrwxrwx. 1 root root 15 Oct  3 11:58 K44leiyf -> ../init.d/leiyf

开启在3级别的开机启动,也可以看到如下软链接:

$sudo chkconfig --level 3 leiyf on
[leiyf@leiyangfeng ~]
$ls -l /etc/rc.d/rc3.d/ | grep leiyf
lrwxrwxrwx. 1 root root 15 Oct  3 11:59 S66leiyf -> ../init.d/leiyf

 

 

  

 

posted on 2018-10-03 11:51  licker  阅读(551)  评论(0编辑  收藏  举报

导航