• Debian自启动知识 2015-03-31 20:23 79人阅读 评论(0) 收藏


    Debian6添加了insserv用来代替update-rc.d。update-rc.d 就不多做介绍。

    Debian6里边要添加一个自动启动的服务需要先将启动脚本放在/etc/init.d,然后使用insserv来启用这个服务。

    例如服务名称为 myserver,则脚本为/etc/init.d/myserver。
     

    然后使用 insserv myserver可以将myserver设为自动启动:

    </pre><pre name="code" class="python">insserv myserver #添加服务  
    insserv -r myserver #删除服务  
    insserv -d myserver #使用默认的runlevels 

    和之前不同的是:你的脚本文件必须包含固定格式的BEGIN INIT INFO和END INIT INFO:

    #!/bin/bash  
    #  
    ### BEGIN INIT INFO  
    # Provides:           
    # Required-Start:      
    # Required-Stop:              
    # Default-Start:       
    # Default-Stop:        
    # Short-Description:   
    # Description:         
    ### END INIT INFO  
    
    
    Linux 启动时,运行一个叫做init 的程序,然后由它来启动后面的任务,包括多用户环境,网络等。
    那么,到底什么是运行级呢?简单的说,运行级就是操作系统当前正在运行的功能级别。这个级别从1 到6 ,具有不同的功能。
    RedHat的运行级说明:
    0 为停机,机器关闭。
    1 为单用户模式,就像Win9x 下的安全模式类似。
    2 为多用户模式,但是没有NFS 支持。
    3 为完整的多用户模式,是标准的运行级。
    4 一般不用,在一些特殊情况下可以用它来做一些事情。
    5 就是 X11 ,进到 X Window 系统了。
    6 为重启,运行 init 6 机器就会重启。


    这些级别在/etc/inittab(Ubuntu里面没有这个文件) 文件里指定。这个文件是init 程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d(Ubuntu没有这个目录) 目录下的文件。
    大多数的Linux 发行版本中,启动的是/etc/rc.d/init.d(Ubuntu是/etc/init.d )。这些脚本被ln 命令来连接到 /etc/rc.d/rcn.d(Ubuntu是/etc/rcN.d ) 目录。(这里的N 就是运行级0-6)
    例如/etc/rc.d/rc2.d 下面的S10network 就是连接到/etc/rc.d/init.d下的network 脚本的。
    因此,我们可以知道,rc2.d 下面的文件就是和运行级2 有关的。


    文件开头的S 代表start 就是启动服务的意思,后面的数字10 就是启动的顺序。例如,在同一个目录下,你还可以看到 S80postfix 这个文件,80 就是顺序在 10 以后,因为没有启动网络的情况下,启动postfix 是没有任何作用的。
    再看一下 /etc/rc.d/rc3.d,可以看到文件S60nfslock,但是这个文件不存在于 /etc/rc.d/rc2.d 目录下。NFS 要用到这个文件,一般用在多用户环境下,所以放在rc3.d 目录下。
    另外,在/etc/rc.d/rc2.d 还可以看到那些K 开头的文件,例如
    /etc/rc.d/rc2.d/K45named ,K 代表 kill 。
    标准的Linux运行级为3 或者5 ,如果是3 的话,系统就在多用户状态。如果是5的话,则是运行着X Window 系统。如果目前正在3或5,而你把运行级降低到2的话,init 就会执行 K45named 脚本。(Ubuntu运行级为2,可以用runlevel查看 )
    不同的运行级有不同的用处,也应该根据自己的不同情形来设置。例如,如果丢失了root 口令,那么可以让机器启动进入单用户状态来设置。在启动后的 lilo 提示符下输入:
    init=/bin/sh rw
    就可以使机器进入运行级1 ,并把 root 文件系统挂为读写。他会跳过所有系统认证,让你使用passwd 程序来改变root口令,然后启动到一个新的运行级。


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    Protocol https not supported or disabled in libcurl
    初学require.js
    HTML中的IE条件注释
    前端,我为什么不要你
    敲点JavaScript代码
    小白科普之JavaScript的函数
    小白科普之JavaScript的BOM模型
    小白科普之JavaScript的JSON
    小白科普之JavaScript的数组
    document.documentElement和document.body的区别
  • 原文地址:https://www.cnblogs.com/paulweihan/p/4660107.html
Copyright © 2020-2023  润新知