linux下rc.d/目录文件以及程序开机自启动设置

发布时间:2020-11-25编辑:脚本学堂
linux下rc.d/目录文件以及程序开机自启动设置

本文介绍的内容以fedora9为例。

复制代码 代码如下:

[root@feiyinzilgd rc.d]# pwd 
/etc/rc.d

[root@feiyinzilgd rc.d]# ls 
init.d  rc0.d  rc2.d  rc4.d  rc6.d     rc.sysinit 
rc      rc1.d  rc3.d  rc5.d  rc.local 

其中,x.d为目录,其他的均为脚本可执行文件。

在讲述这几个目录以及文件的作用及关系之前,我们需要了解linuxredhat系列)的启动顺序。

系统上电之后,会进行硬件自检,然后初始化启动bootloader,加载内核,内核被加载到内存中之后,就开始运行启动。一旦内核启动,就可以初始化硬件设备,加载根文件系统。内核转载根文件系统,初始化设备驱动以及相关数据结构之后,就会启动一个init用户级程序,完成引导进程。那么,这个init进程就回去读取/etc/inittab文件中的系统运行级别
 

复制代码 代码如下:
[root@feiyinzilgd rc.d]# cat  /etc/inittab  
    # inittab is only used by upstart for the default runlevel. 
    # 
    # ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM. 
    # 
    # System initialization is started by /etc/event.d/rcS 
    # 
    # Individual runlevels are started by /etc/event.d/rc[0-6] 
    # 
    # Ctrl-Alt-Delete is handled by /etc/event.d/control-alt-delete 
    # 
    # Terminal gettys (tty[1-6]) are handled by /etc/event.d/tty[1-6] and 
    # /etc/event.d/serial 
    # 
    # For information on how to write upstart event handlers, or how 
    # upstart works, see init(8), initctl(8), and events(5). 
    # 
    # Default runlevel. The runlevels used are: 
    #   0 - halt (Do NOT set initdefault to this) 
    #   1 - Single user mode 
    #   2 - Multiuser, without NFS (The same as 3, if you do not have networking) 
    #   3 - Full multiuser mode 
    #   4 - unused 
    #   5 - X11 
    #   6 - reboot (Do NOT set initdefault to this) 
    #  
    id:5:initdefault: 

系统运行级别有0~6共7个运行级别:
    # Default runlevel. The runlevels used are: 
    #   0 - halt (Do NOT set initdefault to this) 
    #   1 - Single user mode 
    #   2 - Multiuser, without NFS (The same as 3, if you do not have networking) 
    #   3 - Full multiuser mode 
    #   4 - unused 
    #   5 - X11 
    #   6 - reboot (Do NOT set initdefault to this) 
    #  
    id:5:initdefault: 

#0 ——停机(不能使用)
#1——单用户模式
#2——多用户模式,但是没有NFS
#3——完全多用户模式
#4——没有使用
#5——图形界面模式
#6——重启模式(不能使用)

id:5:initdefault(运行模式设置)。

那么,init进程就会读取这个系统运行级别设置,然后运行/etc/rc.d/rc脚本。

通过这个脚本,然后进入rcx.d。启动相应的程序。其中rcx.d为/etc/rc.d/rcx.d(x为对应的系统运行级别)。/etc/rc.d/rcx.d/下的文件均为符号链接,最终绝大部分都是都是链接到/etc/rc.d/init.d下面。

到这里,我们可以知道,/etc/rc.d/init.d目录下面的都是开启启动脚本文件,用来启动相应的程序。

您可能感兴趣的文章:
1.linux启动过程详解
2.linux系统脚本启动顺序详解
3.Linux开机启动(bootstrap)过程