1、init 说明
init进程是系统中所有进程的父进程,init进程繁衍出完成通常操作所需的子进程,这些操作包括:设置机器名、检查和安装磁盘及文件系统、启动系统日志、配置网络接口并启动网络和邮件服务,启动打印服务等。
系统有多种运行级别,不同的运行级别所启动的服务不同。系统运行级别有8种,分别为:init [0123456Ss] 0 进入PROM状态(OK状态) 1 管理状态(所有文件系统都挂上的单用户模式,禁止其他用户登录) 2 多用户模式(没有网络文件共享服务) 3 多用户模式(有网络文件共享服务) 4 未使用 5 退出操作系统并关机 6 重新启动机器 S,s 单用户模式
2、初始化和启动/结束脚本
当一个Solaris系统启动时,初始化进程就产生了,它负责管理进程和运行级别之间的换。一旦系统获得一个特定的运行级别,那么可以用init命令后面加上所需的运行级别来改变运行级别。当系统键入一个运行级别时,在相应的“rc”目录中的启动脚本以升序方式执行,这里,脚本的名字前缀是Snn,nn是一个序列号。由此,一个S60firewall的启动脚本将在脚本S6ldblistener之前执行。相反地,当一个改变运行级别被请求时,例如当系统正在重新启动时,这时,结束脚本是从相应目录“rc”中以升序方式执行的。结束脚本的前缀是Knn,nn也是一个序列号。这些目录下包含两种文件:
以K打头,后面跟两个数字以及一些字符串:表示系统到这个运行级别时所需要停止的一些服务,系统将以stop调用这个脚本。以S打头,后面跟两个数字以及一些字符串:表示系统到这个运行级别时所需要开始的一些服务,系统将以start调用这个脚本。不管是启动脚本还是结束脚本,都用符号链接到一个带有“start”和“stop”参数的单个脚本,这些是对应传递的。
如果关心在Solaris启动和关闭时启动脚本和结束脚本的类型,表2显示了目录/ect/rc2.d中的主要启动脚本,而表3显示了目录/etc/rc0.d中的主要结束脚本,详细的脚本见图4,这些将导致系统的转变,认识到这一点是很重要的。
|
表2 多用户启动脚本 |
|
表3 单用户结束脚本 |
|
图4 点击看大图 |
/etc/rc1.d目录包含 进入运行级别1所需要运行的一些脚本(图5)。
|
图5 点击看大图 |
/etc/rc2.d目录包含进入运行级别2所需要运行的一些脚本(图6)。
|
图6 点击看大图 |
/etc/rc3.d目录包含进入运行级别3所需要运行的一些脚本(图7)。
|
图7 点击看大图 |
|