每次系统开机的时候,都会根据不同的runlevel级别启动不同的服务。本文将为您揭示linux系统的开机启动服务的修改与查看。
开机按[CTRL]+[ALT]+[F7]/[F8]可查看系统启动时正在启动的服务!!!!
众所周知Linux给我们提供了7中不同的启动级别0~6,那么不同的启动级别都会启动那些服务哪。可以使用chkconfig--list查看,可以使用chkconfig服务名--level3{on|of}修改是否要再某个级别启动或停止。
1.例如:要把sshd服务在第3种启动级别中停止。
[root@team4rc3.d]#chkconfigsshd--level3off
2.还可以手工修改,在/etc/rc.d/这个目录里有很多不同runlevel对应的目录,里面表明进入某个启动级别时要启动和停止那些服务。
例如:
[root@team4etc]#ls/etc/rc.d
init.drc0.drc2.drc4.drc6.drc.sysinit
rcrc1.drc3.drc5.drc.local
我们用rc3.d这个目录为例,这个目录里面记录的是进入init3时需要停止和启动那些服务。
下面为rc3.d目录的内容:
[root@team4etc]#ls/etc/rc.d/rc3.d/
K02avahi-dnsconfdK89pandS25bluetooth
K02dhcdbdK89rdiscS25netfs
K02NetworkManagerK91capiS25pcscd
K02NetworkManagerDispatcherK99readahead_laterS26apmd
K05conmanS04readahead_earlyS26hidd
K开头代表这个启动级别需要停止的服务,编号是停止的时候执行的顺序,再后面就是服务明了。
S开头则是要启动那些服务。
注意:先执行K开头的,后执行S开头的。所以S开头的服务会覆盖K开头的服务。
Linux设置程序的开机自启动与Linux服务
这里只说我所知道的,举例如下
需求是我要用Windows下的VNCViewer连接到LinuxServer.我在Linux下面输入
#vncserver
设置好密码,好现在我就可以在Windows下面使用VNC连接到Linux桌面了,这个时候如果我的LinuxServer系统重启了,那么我还得再敲一次vncserver这个命令,所以我现在要让LinuxServer在开机时自动启动vncserver
有哪些方法呢?
1.我可以把vncserver设置成系统的服务,并启动起来,使用如下命令查看vncserver是否已经是系统的服务
#chkconfig--list|grepvnc
vncserver0:off1:off2:off3:off4:off5:off6:off
现在我们要设置vncserver开机自启动,使用如下命令
#chkconfig--level5vncserveron#chkconfig--list|grepvnc
vncserver0:off1:off2:off3:off4:off5:on6:off
这个时候重启系统,那么vncserver就会以服务的方式自动起来,但是现在如果想立即使用vnc则直接敲命令vncserver即可
2.我们可以把vncserver这条命令写在Linux开机要运行的脚本里面,那些脚本是Linux开机时要执行的呢?
我知道的有以下这些:
/etc/rc.local
/etc/rc.sysinit
/etc/inittab
/etc/profile
这里记住Linux服务于Linux开机自启动之间的区别和联系。