正如许多人经常想知道的那样,Linux/Unix操作系统如何启动?如何在启动过程中运行一个进程,以使我不必每次都手动启动它?为此,必须了解当前向其添加任何内容的基本环境过程。
在典型的Linux系统上,我更喜欢Debian,引导程序指向内核,而内核又指向/etc下的文件inittab。引导加载程序和内核之间的交互对于另一篇文章来说足够复杂。
- /etc/inittab是一个文件,其中包含一组指令来调用/etc目录下的特定目录。它是一个Shell脚本,看起来像这样:
#/etc/inittab:init(8)配置。#$Id:inittab,v1.912002/01/2513:35:21miquelsExp$
#默认运行级别。id:2:initdefault:
#引导时系统配置/初始化脚本。#除在紧急(-b)模式下引导外,此命令首先运行。si::sysinit:/etc/init.d/rcS
- 然后,系统调用/etc/init.d/rcSShell脚本。然后,该脚本执行/etc/rcS.d/目录中找到的每个Shell脚本。将应用程序添加到系统后,它将其启动脚本放置在/etc/rcS.d/或/etc/rc2.d/目录中。这组脚本最初运行,并且是特定于系统的,切勿被篡改。在这组脚本产生每个进程之后,/etc/init.d/rcS脚本然后调用/etc/rc2.d/目录下的所有文件。/etc/rc2.d/目录通常是应用程序软件,而不是系统专用的软件。这些目录中的每个文件都有一个S(用于开始)和一个数字。例如:S43portmap。该数字并不意味着它将开始第43个进程,而是用于交错启动哪个进程。因此,如果您希望在S43portmap之前或之后开始某些事情,则可以将前缀设置为S40portmap之前的S40和S50portmap之后的S50。
- 如果要添加要运行的应用程序,则应始终将其添加到/etc/rc2.d/目录中。/etc/rc2.d/是大多数Linux系统上使用的默认运行级别。
- 如果您在/etc/rc2.d/目录中发现自己,则可能会注意到每个文件实际上都被符号链接回/etc/init.d/目录。您实际上是正确的。如果考虑一下,它实际上很整洁,因为您可以创建一个具有不同编号的符号链接,以在不同的时间启动任何这些脚本。这也为用户提供了灵活性,使其可以轻松修改其系统的引导过程。
现在,向我展示如何在Windows中执行该操作!
有关Linux和UNIX的更多信息,请转至http://www.lainoox.com
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/168071.html