2019年5月25日 星期六

Unix 的运行级别

我们现在知道Unix可以启动一个基于GUI的系统或者一个基于CLI的系统。下面来解释下Unix提供这种灵活性的方式。
当计算机系统,程序或者设备可以有几种状态时,我们使用术语模式(Mode) 来指一个特定的状态。例如,一名程序员可能这样告诉另一名程序员:“我昨天没来看您。昨天我处于清扫模式,整个下午一直在打扫房间”。
我提到这一项思想的原因在于Unix的引导过程是灵活的。这种灵活性是通过使Unix拥有一下几种不同模式运行的能力完成的。这些模式成为运行时级别(runtime level),或者简称为运行级别。
什么是运行级别呢:运行几杯严格定义剁手有些偏于技术:运行级别指允许特定进程组存在的系统软件配置。这是一个不容易理解的定义。因此我们给出一个不太正式的定义,及运行界别指定Unix将提供哪些基本服务。对于不同的运行级别,Unix提供不同的服务组。
Unix系统每次引导时,它都要经历一个复杂的过程。作为该过程的一部分,运行级别就是这事设置的。设置的运行级别控制Unix的运行模式。下表显示了大多数Linux 发行版使用的运行级别:


运行级别 描述
0 停机(关机)
1 单用户模式:命令行
2 非标准化
3 多用户模式:命令行
4 非标准化
5 多用户模式:GUI
6 重新启动
 
在大多数情况下,Linux默认引导至运行级别3或者运行级别5。如果您的系统设置成引导到运行级别3,那么您将看到一个基于文本的登陆屏幕。一旦登陆系统,您使用的是基本的CLI.
如果您的系统设置引导到运行级别5,那么Linux将启动默认的GUI。您将使用一个图形登陆屏幕登陆,而且将使用一个桌面环境来进行工作。
大多数人都希望使用桌面环境,因此将运行级别5设置成默认的。但是,当系统管理员需要解决服务器(例如web服务器或者电子邮件服务器)问题时,他通常希望使用运行级别3,这是因为CLI允许他快速方便的完成希望的动作(大多数系统管理员通过键入命令来完成,而不是在菜单中进行选取)。基于这一原因,桌面系统通常设置成引导运行级别5,而服务器通常设置成引导到运行级别3。
运行级别1是旧时代的一个延续,那是大多数Unix系统由许多用户共享,而由一名系统管理员管理。有时候,系统管理员需要做一些不允许其他人同时登陆系统的工作。换句话说,在一个短暂时间内,系统管理员必须将一个多用户系统转换成为一个单用户系统。
完成这一点。系统管理员向所有的用户发送一个通知,告知系统即将关闭(假设5分钟后)。当这段时间过去之后,他将重新启动Unix系统到现在所谓的运行级别1。这将使系统进入过去所谓的系统维护模式(system maintenance mode), 而现在称为单用户模式(single user mode)。系统管理员在知道了其他人已经不能再登陆系统后,就可以进行自己的工作了,一旦系统管理员完成自己的工作,他将重启系统到多用户模式(运行级别3或者5),而用户也将再次被允许登陆系统。
现在运行级别1已经不太经常使用。这是因为现代的Unix 系统非常灵活,从而可是使系统管理员可以在其他用户登陆的情况下完成大量的工作---甚至是升级和维护。当系统有非常严重的问题时(例如硬盘损坏),系统管理员才需要将系统引导到运行级别1。
技术提示:
如果您希望使用基本的CLI而不是(像大多数人一样)使用GUI,那么您可以修改系统,将系统设置为默认引导运行级别3,而不是运行级别5。
如果维护自己的计算机,那么您将不得不自己修改设置,
首先:通过将/etc/inittab中的initdefault的值修改为3使系统自动启动到运行级别3。然后在rcs.d目录中检查符号链接,确保GUI没有在这一运行级别中自动启动。
提示:如果您在运行级别3上使用CLI,而您希望启动GUI,那么您可以使用satrtx命令。

沒有留言:

張貼留言