「掌握重点」Linux 服务如何按顺序启动?(linux服务启动顺序)
Linux服务的启动顺序一直都是系统管理员和IT专业人士所关注的重要议题。 FreeBSD及其他类Unix系统一直以来都使用rc{服务编号},来指定服务启动和停止顺序。而在Linux服务器上,从Fedora Core 3开始,引入了SysVinit系统服务器管理架构,以替代单一的rc服务的能力,可以在更多的服务上提供更精准的控制。
首先,Linux服务启动和停止顺序是按照级别(runlevel)进行控制的。每个级别(0-6)对应着特定的类型的服务,其启动和停止顺序随着Linux版本的变化而有所不同。例如,在Fedora Core 3上,默认的runlevel是3,这意味着只有级别3以下的服务才会被启动和停止。
因此,当您要重新排列Linux服务启动顺序时,首先要确认在哪个运行级别下需要调整服务的顺序,以便知道那些服务可以被排列起来。为确保服务的正确启动和停止,我们可以使用以下几种系统管理员常见的方法操作:
1. 修改/etc/inittab文件,将特定服务从runlevel 3中移除,然后向其他运行级别添加,以重新排列顺序。例如,
# 3:5:respawn:/sbin/mingetty tty3
以上配置意味着当Linux系统启动的时候,Runlevel 3会启动mingetty tty3 服务
2. 对某些服务添加优先级,以确保每次启动注册的服务时,都会优先启动特定的服务。例如,
# chkconfig –level 3 nscd on
# chkconfig nscd –level 3 90
以上配置意味着当Linux系统启动Runlevel 3的时候,会优先启动nscd服务。
3. 通过修改服务启动脚本,明确由则服务依赖。例如,在配置SSH服务时,我们可以在/etc/init.d/sshd文件中添加:
# Required-Start: network
以上配置意味着,当启动Runlevel 3的时候,会优先启动网络服务,然后才会启动ssh服务。
总之,要掌握Linux服务启动顺序,需要深入了解Runlevel概念,修改/etc/inittab文件,通过chkconfig以及修改服务脚本。只有这样,才能确保服务的正确启动和停止。