如何确定从/etc/init.d启动的服务的顺序

如何确定从/etc/init.d启动的服务的顺序

ls -l /etc/init.d/给我一个在 Linux 上启动的服务列表。我如何知道服务的启动顺序?

就像如果ls -l /etc/init.d/列出

serviceA
serviceB
serviceC

我想知道是否serviceB从之前开始serviceA。我想知道开始的顺序

答案1

/etc/init.d/不使用该目录。实际使用的目录将是目录之一/etc/rc*.d。哪一个取决于哪一个运行级别你的系统进入。通常您会在运行级别 5 下启动/etc/rc5.d/

因此,如果您想找到脚本将在此处开始运行的顺序。这些脚本的运行顺序取决于目录中包含的符号链接的名称/etc/rc*.d。当您进入运行级别(启动时)时,将执行以 S 开头的脚本。以 D 开头的脚本在离开此运行级别时执行(例如:关闭)。脚本按文件名顺序执行。这就是为什么这些目录中的符号链接用数字命名,以便将它们按“正确”的顺序排列。

答案如此简短......LC_COLLATE=C ls -l /etc/rc5.d 无论打印的顺序是什么,它们都会运行。

相关内容