完成这一章,你将能够做以下的事情:
描述在系统启动的过程中如何使用运行级
修改和观察系统当前的运行级
定义系统默认的运行级
通过/etc/rc.config.d下的配置文件来启动或禁用服务
创建启动和关闭脚本来在系统启动和关闭的时候自动启动和关闭服务。
浏览启动错误日志
1.启动系统和网络服务
在前面的章节中,我们知道了配置一个LAN界面和将一个HP-UX系统连接到网络的过程。在配置好一个LAN界面之后,就可以启动一些服务来使用系统的LAN连接。下面就是其中的一些服务:
NFS:可以通过网络存取其它主机上文件系统
DNS: 一种将主机名解析为IP地址的网络服务
NTP: 被用来同步局域网中系统时钟
这些服务和其它的">系统服务如cron,lp一样,都需要在系统中运行一个守护进程。这一章会讨论HP-UX系统中在系统启动的过程中启动这些守护进程的过程和在系统关闭的过程中kill这些进程的过程。
回顾系统的启动过程:
在系统启动的前阶段只是寻找并且装载内核到内存。具体步骤是:在系统加电之后,“Processor Dependent Code(PDC)会从系统的BootROM芯片中被读入内存,PDC会进行一些初始化的硬件测试工作,完成后会判断哪个磁盘是默认的启动磁盘。
任何启动磁盘中都包含有一个引导区,其中包含有一段称为"Initial System Loader" 的可执行代码。ISL会调用HPUX 内核装载器,装载器将内核装载入内存中,然后内核会对root文件系统作一个完整的检查,然后就会调用init进程。init守护进程负责将系统启动到完全可用的状态。init进程自己会执行一些系统的初始化的任务。它会检查/etc/fstab中列出的文件系统,初始化系统的控制台,和执行其它的在/etc/inittab中列出的任务。
init调用/etc/rc中的程序,启动大多数的系统服务如NFS,DNS,和NTP最终将系统带到全功能的状态。
2.运行级
将HP-UX系统启动到完全可用的状态的过程中必须要启动几种服务。启动这些服务必须要依靠其它的一些条件,例如:只有在LAN卡配置好之后才能启动网络文件系统。那么init是如何保证这些条件的呢?
运行级别介绍:
init守护进程将系统带到一种全功能的阶段被称为“运行级”。一个运行级就是一种系统的状态,在每种状态下都有一些特定的进程被允许运行。运行级决定系统中的哪些功能和服务有效。
更高的运行级中可以运行更多更多的服务。
运行级越低,可以运行的服务越少。
HP-UX中有效的运行级有0,s,S,1-6。
运行级 0 系统关闭状态。当运行在运行级0的时候,系统执行系统关闭过程,停止所有的进程并且关闭系统
运行级 s 为系统管理任务而保留的特殊的运行级,也称为单用户状态意思是只能一个用户使用,通常这个用户是系统管理员,例如,关闭系统命令/sbin/shutdown可以将系统带到s运行级。
运行级 S 同运行级s类似。在运行级别s的状况下,只有从系统控制台可以存取系统,而当系统运行为S的时候,你可以从你登录的终端上存取系统,也就是可以启动虚拟系统控制台。
运行级 1 和单用户类似,但是会装载文件系统,同时同步器会运行,这个运行级也可以被用来进行系统管理的任务。
运行级 2 多用户状态,在此状态下,所有的用户都可以存取系统。
运行级 3 对HP CDE用户,HP CDE在在这个运行级是可用的,同时在运行级3可以输出NFS文件系统;这也被成为“带网络支持的多用户状态”。
运行级 4 对HP VUE用户,在这种模式下,HP VUE可用,HP VUE是在10.30以下的版本中提供。HP-UX 11.0以上不再支持HP VUE。
运行级和启动/关闭过程
最初,init将系统启动到运行级别1,然后启动到运行级2,然后是3,最后到达/etc/inittab文件中定义的默认的运行级。在每一个运行级阶段,init会调用/sbin/rc来启动服务。
对系统关闭的过程来说,init会将系统关闭到运行级0,在每个运行级,/sbin/rc有机会来kill任何不再需要的服务。
修改和浏览系统运行级
你可以使用who -r 命令来查看系统当前的运行级。你还可以使用init命令来更改你的系统运行级。
# whor -r
# init 4
# init 2
# init 3