chkconfig设置开机自启动的原理
Posted licker
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了chkconfig设置开机自启动的原理相关的知识,希望对你有一定的参考价值。
开机自启动服务的原理
$sudo chkconfig --level 3 sshd on #手动设置3级别的开机自启动 [[email protected] ~]
#手动设置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
[[email protected] ~]
$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
[[email protected] ~]
$ls -l /etc/rc.d/rc3.d/ | grep sshd
lrwxrwxrwx. 1 root root 14 Oct 3 11:25 K25sshd -> ../init.d/sshd
[[email protected] ~]
$sudo
m -f /etc/rc.d/rc3.d/K25sshd ; sudo ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S55sshd
[[email protected] ~]
$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
[[email protected] ~]
$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 [[email protected] ~] $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 [[email protected] ~] $ls -l /etc/rc.d/rc3.d/ | grep leiyf lrwxrwxrwx. 1 root root 15 Oct 3 11:59 S66leiyf -> ../init.d/leiyf
以上是关于chkconfig设置开机自启动的原理的主要内容,如果未能解决你的问题,请参考以下文章
将自己写的脚本添加至开机自启动服务和chkconfig的原理