发布日期:2015-09-18 16:53 来源: 标签: Linux教程 Unix系统 init syslog
本小节将概括解释一些重要的U n i x服务,U n i x系统中,最重要的服务是由 i n i t提供的。i n i t是每个U n i x系统中第一个启动的进程,也是内核在启动时所进行的最后一件事情。 i n i t启动时,它会处理各种启动“杂活儿”(检查和装入文件系统、启动后台程序等),继续执行启动进程。

1、init 

        U n i x系统中,最重要的服务是由 i n i t提供的。i n i t是每个U n i x系统中第一个启动的进程, 也是内核在启动时所进行的最后一件事情。 i n i t启动时,它会处理各种启动“杂活儿”(检查 和装入文件系统、启动后台程序等),继续执行启动进程。 

         i n i t具体做的事和个人目的有关。i n i t通常提供单用户模式,这种模式下,没有人能够登录, 只有r o o t才能在控制台使用外壳;普通模式称为多用户模式。有的人把它统称为运行级别;单 用户和多用户模式都被认为运行级别是2  ,还有别的运行级别,比如X运行级别。 

        普通操作中,i n i t确定g e t t y正在运行(允许用户登录)并接收“孤儿”进程(其父进程 已经死了的进程;在U n i x系统中,所有进程都必须在一个单独的树中,所以 i n i t必须接收孤 儿进程)。  系统关闭时,i n i t就负责杀死其他所有进程、卸载所有的文件系统、中止处理期以及处理已配置好的各种杂事。  

2、从终端登录 

        从终端(通过串行线路)和控制台(在没有运行 X 时)登录是由g e t t y程序提供的。i n i t为 允许登录的每个终端提供一个独立的 g e t t y实例。g e t t y读取登录用户名,并运行 l o g i n (登录)程序,该程序便开始读取密码。如果用户名和密码都正确,l o g i n程序就开始运行s h e l l  (外壳)。 由于用户名和密码不匹配而引起 s h e l l 中断时(比如,用户注销或登录中断等),i n i t会注意到这一点,并发起一个新的 g e t t y实例。内核不会注意到这一点,这一切都是由系统程序来控制的。

3、syslog 

       内核和许多系统程序都会发出错误、警告和其他消息。这些消息可稍后进行查看,所以,把它们写入一个文件是非常重要的。这就是系统日志。可以根据消息的重要性或写入者,对消息进行分类。比如,内核消息通常被直接写入一个不同于其他消息文件的文件内,因为内核消息通常更为重要,需要定期读取以探测问题的起因。 

4、周期性执行的命令:cron和a

        对用户和系统管理员来说,通常都需要周期性地运行某些命令。例如,系统管理员可能想运行一个命令,从老文件中清空带有临时文件( / t m p和/ v a r / t m p )的目录,以防止磁盘填满数据,因为并非所有的程序都能正确善后。 

         c r o n服务就是为此而设计的。每个用户都有一个 c r o n t a b文件,他们在该文件内列出自己想执行的命令及其命令执行次数。 c r o n后台程序负责在指定时间运行指定的命令。 a t服务和 c r o n服务类似,但它只执行一次:这个命令是在指定时间执行的,而不是重复执行的。

5、 图形化用户接口 

        U n i x和L i n u x都没有将用户接口结合在内核内;而是令其由用户级程序来实施。这种方式适用于文本模式和图形化环境。这样的安排令系统更为灵活,但有个缺点:为每个程序实施不一样的用户接口令系统更难以掌握。 

        L i n u x系统主要使用的图形化环境叫作“X Window System ”(简称X )。X也没有实施用户接口;它只实施一个窗口系统,也就是能够实施图形化用户接口的若干个工具。X窗口系统上,最常见的三类用户接口是A t h e n a 、M o t i f和Open Look  (最近还有K D E和G n o m e,两者都是建于X之上的用户环境)。

6、连网

        “连网”是指把两台或两台以上的计算机连接在一起,以便它们可以进行沟通。实际应用中的连网和沟通稍微有些复杂,但非常有用。

          U n i x操作系统提供了许多连网功能。大多数基本服务(文件系统、打印、备份等)都可在网络中进行。这样一来,系统管理就变得更为简单,因为它允许集中管理,而且还可享受到微型计算处理和分布式计算的好处,比如降低成本和容错性更佳等。

7、网络登录 

        网络登录和普通登录稍有不同。每个终端都有一个独立的物理串行线路,通过这条线路,用户就可以登录了。对每一个通过网络登录的用户来说,有一条独立的虚拟网络连接,而且连接的多少是任意的(至少可以说有许多。网络带宽仍然是很宝贵的,所以通过一条网络连接的并发登录数实际上是有上限的)。所以,不能为每一条可能的虚拟连接运行一个独立的g e t t y程序。通过网络登录还有几种方式,比如,正在成为  T C P / I P 网络主流的t e l n e t和 r l o g i n 。 

         实现网络登录时,取代运行一大堆 g e t t y程序的是一个独立的后台程序( t e l n e t和r l o g i n都有独立的后台程序),该后台程序负责监听所有的进入登录请求。一旦它注意到有请求进入, 就会启动自己的一个新实例,处理这个登录请求;原来的实例仍然继续监听其他的登录请求。 新实例的作用和g e t t y类似。 

相关评论

专题信息
    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。