电脑技术学习

解读SMF:Solaris系统服务管理好帮手

dn001

  三、SMF和系统启动的关系

  1. SMF和系统启动的关系如图1

  

  图1 SMF和系统启动的关系

  SMF 提供用来引导系统的新方法。如:

  (1)有另外一个与 all 里程碑相关联的系统状态。此里程碑不同于多用户 init 状态,因为 SMF 只能识别定义的服务。如果您添加了服务(如第三方产品),那么,除非您使用下面的命令,否则它们可能不会自动重新启动:

  ok boot -m milestone=all

  (2)如果使用某个里程碑引导系统,一定要同时使用 -s 选项。如果未包括 -s,则系统将停留在引导系统时所处的里程碑状态。通过按 Ctrl-D,系统将不会自动进入多用户状态。可以使用以下命令进入多用户状态:

  # svCADm milestone all

  (3)在引导系统时,可以选择使用 verbose 选项来查看更多的消息。缺省情况下,系统将不显示这些消息。要在详细模式下引导,请使用以下命令:

  ok boot -mverbose

  2. Solaris 10的运行级

  Solaris 10有八个运行级,表2对其进行了说明。在 /etc/inittab 文件中,缺省的运行级指定为运行级 3。

  表2 Solaris 10的运行级

  

  SMFde 组成要素

  SMF包含两个进程、服务定义的manifest和profile、服务配置库和命令行管理工具等内容:

  1. svc.startd, svc.configd

  svc.startd是SMF的主要进程,它根据系统管理员指令或者系统故障或应用故障来启动、停止、重启服务。svc.configd是负责管理服务配置库的进程。

  2. manifest, profile

  服务和服务的实例可以用xml文件定义,manifest定义服务,profile定义服务实例,这些xml文件通常存放在/var/svc目录下。

  3. repository(sqlite db)

  服务配置库存放在/etc/svc/repository.db文件中。服务配置库实际上是一个sqlite的关系数据库,它存放了服务的定义、配置等信息。 /var/svc目录下的manifest和profile文件和/etc/svc/repository.db文件都包含了服务的定义、配置等信息,后者的信息是权威的。

  4. CLI mgmt tool

  命令行管理工具包括:svccfg, svcadm, svcprop, svcs, inetadm, inetconv, repoistory_restore。

  到此为止笔者介绍了使用SMF来管理Solaris 系统服务的方法。

标签: