linux系统中独立进程与非独立进程
一、linux系统启动的过程及顺序:
       * 计算机加电,并调用bois 设置
       * bois 调用硬盘主引导记录 mbr中的grub引导器
       * grub 引导器将调用内核,进行硬件检测与初始化
       * 内核将调用linux 中的第一个进程init 进程
       * init进程称为linux系统的父进程,即由该进程调用linux系统中的其它所有的子进程、
       * 最终提示输入用户名与密码、
二、init 进程介绍:
       * linux中的init进程,通过ps -e命令查看后,其进程编号为1 ,表示该进程是第一个启动的进程、
          linux进程是由linux的内核调用、
       * linux系统中的其它进程,均要求由init进程调用,因此称init进程为父进程、
       * linux进程其它要要按照对应的配置文件进行运行、
         其它对应的配置文件为 /etc/inittab
三、inittab配置文件的介绍:
       1init 进程的配置文件位置
          /etc/inittab
       2linux系统的不同级别及介绍:
          系统中共存在七个级别,分别是:级别 1 2 3 4 5 6 0
           级别 0 --进入该级别,系统即关闭所有的程序,并断开电源 [关机]
           级别 1 --进入该级别 只允许root进入,不支持网络,该级别用于root用户进行系统维护、
          
          
级别 2 --linux的纯字符界面模式,不支持网络,但支持多个用户在当前系统中登录、
           级别 3 --linux的纯字符界面模式,支持网络,支持多用户登录,linux系统的各种服务器,通常均
                     运行于该级别下、
      
          
级别 4 --linux系统未对该级别定义、
           级别 5 --linux系统的图形界面,通常作为初学者及图形工作站使用、
           级别 6 --linux系统会关闭所有的程序,并且重新启动系统、
       3inittab配置文件的内容说明:
           1)、该文件中,每一行均采用如下格式
              编号 : 运行级别 : 触发动作  : 运行命令
      2)、编号与运行级别:
              编号 一项,在/etc/inittab文件,只需要确保不重复即可,通常编号采用1 4 个字符组成、
              运行级别 一项,指当前的触发动作是在哪个级别发生的,只有指定的级别下发生该动作、
              才会去自动执行具体的命令、
           3)、触发动作介绍:
              * initdefault   -- 该动作为当linux启动时,默认要进入的级别
                                 可以将该动作的级别,由原来的5号级别更改为3号级别、
              * sysinit       -- 该动作为当linux启动时,要进行初始化、
                                 该动作会要求自动执行一个程序 /etc/rc.d/rc.sysinit

              * wait          --
进入相应的级别,会自动执行一次对应的命令、
                                 13:3:wait:/etc/rc.d/rc 3
                                 表示 进入级别 3就自动运行一次 rc 3 命令
                              注:rc 3命令,会调用 /etc/rc3.d目录下的所有程序,如果这些程序以k开头
                                  即表示要关闭的,以s开头的即表示要启动的、
              * ctrlaltdel    -- 在任何级别下,按下键盘上的ctrl+alt+del 三键,即执行命令
                                  /sbin/shutdown -t3 -r now   该命令为立刻重启计算机、
              * powerfail     -- ups告知外界断电,则会执行对应的命令,如
                                 该命令为将在两分钟以后系统关闭 [电源失败]

              * poweerokwait --
在准备关机时,ups告知外界电力恢复,则会执行对应的命令、
                                /sbin/shutdown -c ,即表示取消关机命令、[电源正常]

              * respawn       --
当某一个指定的程序结束后,会再执行一次、该动作,通常是针对于虚拟字符

                                
界面而言,即当用户退出第一个虚拟字符界面时,系统会再运行一次第一个虚拟
                                 字符界面,要求用户登录、对应命令为 /sbin/mingetty tty1

四、独立进程与非独立进程介绍:
        1、独立进程:
              * 所有的独立进程及其进程脚本 均保存在独立进程目录,即 /etc/rc.d/init.d
              * 所有的独立进程,均可以由系统管理员手工启动及控制,也可以使指定的独立进程,在指定的系统

               
级别下自动运行或停止、
              * 针对于独立进程而言,无论是否存在用户访问,其会始终占用系统资源、
                 通常情况下,独立进程是那些使用较多的并且是比较重要的系统程序、
        2、非独立进程:
              * 所有的非独立进程及其进程脚本,均保存在非独立进程目录,即 /etc/xinetd.d
              * 非独立进程通常是那些使用比较少的,占用系统资源较少的进程、
                当有用户访问时,系统会启动非独立进程为用户提供服务,当用户访问结束后,系统会关这些非独立
                进程、
                          startx& -----在纯字符界面下进入图形界面
      
五、独立进程的控制与管理方法:
        1、使用命令查看当前系统所在的级别:
              runlevel  
          如 查看结果为 N 3 ,表示系统刚启动,便直接进入了 3号级别、
            若结果为 5 3     ,表示系统刚从5号级别转到当前的 3号级别
          注:在级别 3下,可以输入命令 startx& 在级别3下启动图形界面、

        2
、在linux系统中,使用命令,在各种级别之间进行切换:
              init 对应的级别号
          init 5
       3、在linux系统中,每个运行级别所对应的级别目录
            级别 0            /etc/rc.d/rc0.d
            级别 1            /etc/rc.d/rc1.d
            级别 2            /etc/rc.d/rc2.d
            级别 3            /etc/rc.d/rc3.d
            级别 4            /etc/rc.d/rc4.d
            级别 5            /etc/rc.d/rc5.d
            级别 6            /etc/rc.d/rc6.d
        说明:用户可以打开每个级别所对应的目录,所在目录下均会存在以下两种文件,即一种是以 k
              开头的文件,该类文件表示进入该级别后要关闭的程序
            
             
另一种是以 s 开头的文件,该类文件表示进入该级别后要运行的程序
              每一种文件都有对应的编号,如 sookillall 00即为程序的编号,表示执行该程序的先后顺序,编号越小,则执行优先

             
级越高、
       4、级别0与级别6的级别目录说明:
           级别6 目录内容:
                    SOOKillall           关闭所有进程
                    SO1reboot            重启系统
                    除此以外,其余的均为以K 开头的文件
           级别0 目录内容:
                    SOOkillall           关闭所有进程
                    SO1halt              挂起 [关闭电源]
                    除此以外,其余的均为以 K 开头的文件、

                  
        5
、使用命令,使指定的独立进程在进入某一个级别后会自动运行、
            方法一:   主菜单丨系统设置丨服务器设置丨服务
                       该方法只能设定独立进程在当前级别下自动运行

           
方法二:    在字符界面下,使用命令 ntsysv
                       该方法也只能设定独立进程在当前级别下自动运行
            方法三:    在字符界面下,使用命令   chkconfig
                      * 使用 chkconfig 命令,查看指定的独立进程能在哪些级别下自动运行
                                      chkconfig    --list独立进程名称 on
                                   chkconfig    --level 35 smb on
                        注意:若要使指定的独立进程在指定的相关级别下不运行,则只需要将on 改为 off  

          
以上三种方法,仅仅是配置了指定的独立进程,在进入某一个对应的级别以后会自动运行、
                         如果现在已经在指定的级别中,独立进程是不会运行的、

       6
、通过命令,使得每一个独立进程在当前的级别下手工运行:
          [而第5点中的三种方法,是下次及以后进入对应级别再自动运行]
          方法一:打开主菜单丨系统设置丨服务器设置丨服务
                  选择所要运行的独立进程,并单击工具栏中的开始即可
          方法二:直接运行独立进程的控制脚本即可
                 * 确定独立进程脚本所在的位置以及名称
                     所有独立进程脚本,全部放于, /etc/rc.d/init.d
                     如,其中有一脚本名称为 smb
                   如果在字符界面下,启动smb,则方法是
                     /etc/rc.d/init.d/smb stop start
                   若是停止
                    /etc/rc.d/init.d/smb stop
                   重启 /etc/rc.d/init.d/smb restart
                  查看状态   /etc/rc.d/init.d/smb status
           方法三: 使用 service 命令,运行脚本
                格式:

                      service
独立进程脚本名 控制方法
                      说明:service 命令,可以自动到 /etc/rc.d/init.d目录下查找对应的独立进程脚本
                 
                      service smb start        打开
                      service smb stop         关闭
                      service smb restart      重启
                      service smb status       查看

六、非独立进程:
           /etc/xinetd.d目录,采用 vi软件打开非独立进程的控制脚本,如 telnet
           将其中的 disable=yes 更改为 disable=no
           完成,保存退出,并且要重启xinetd独立进程,即 service xinetb restart
           注意:将 非独立进程脚本中的disable 值更改为 no ,其目的主要在于使 xinetd 可以
            
               
对该非独立进程进行控制管理,包括启动与停止等工作、
  
               
如果 disable值为yes,则表示xinetd不能控制管理及启动该非独立进程,因此该非独立进程无法提供服务、