inittab文件剖析[CentOS 5.X]

grep -v “^#” /etc/inittab | more #过滤掉以#开头的行

inittab文件格式

id:runlevels:action:process

id: 标识符,一般为两位数字或字母

runlevels: 运行级别,可以指定多个,若为空,则表示从0~6各个运行级别都执行

action: 指定运行状态

process: 制定运行的脚本或命令,最重要

/etc/inittab正文分析

语句1:

id:5:initdefault:

initdefault: 系统指定缺省启动的运行级别,系统默认启动的指令

5: 可以将其改为3默认启动字符界面,而不用启动图形界面

语句2:

si::sysinit:/etc/rc.d/rc.sysinit

/etc/rc.d/rc.sysinit作用:完成系统服务程序的启动,如:系统环境变量设置,系统时钟设置,加载字体,检查加载文件系统,生成系统启动信息日志等.

sysinit:系统启动执行process中的指令,无论哪个运行级别,只要系统启动,这个服务就会启动

附-如果你有一个服务,无论任何运行级别,都希望它在一开机就能自动运行,则可以将之写入/etc/rc.d/rc.sysinit文件中.

语句3:

l3:3:wait:/etc/rc.d/rc 3

/etc/rc.d/rc

作用:根据前文,判断默认运行级别调用/etc/rc.d/rc脚本,执行下面相应运行级别的目录中的服务程序,完成相应运行级别的初始化设置。

Linux服务保存目录:/etc/rc.d/rc[0123456].d

分别存放对应于运行级别的服务程序脚本的符号软链接,链接到init.d目录中的相应脚本

S-start: 系统启动时依次加载这些服务

K-kill : 系统关机时依次关闭这些服务【如果将文件名更改,则不会启动】

数字: 表示启动顺序,数字越小,优先启动

附-如果不想启动此服务只需将其改名即可,如:

mv S03-vmware-tools s03-vmware-tools #不会自动启动

/etc/inittab文件完整内容介绍

    ###表示当前缺省运行级别为5(initdefault);
    id:5:initdefault:

  ###启动时自动执行/etc/rc.d/rc.sysinit脚本(sysinit)
  # System initialization.
    si::sysinit:/etc/rc.d/rc.sysinit

  l0:0:wait:/etc/rc.d/rc 0
  l1:1:wait:/etc/rc.d/rc 1
  l2:2:wait:/etc/rc.d/rc 2
  l3:3:wait:/etc/rc.d/rc 3
  l4:4:wait:/etc/rc.d/rc 4
  ###当运行级别为5时,以5为参数运行/etc/rc.d/rc脚本,其他的会忽略,init将等待其返回(wait)
  l5:5:wait:/etc/rc.d/rc 5
    l6:6:wait:/etc/rc.d/rc 6

  ###在启动过程中允许按CTRL-ALT-DELETE重启系统
  # Trap CTRL-ALT-DELETE
  ca::ctrlaltdel:/sbin/shutdown -t3 -r now
  
    # When our UPS tells us power has failed, assume we have a few minutes
  # of power left. Schedule a shutdown for 2 minutes from now.
  # This does, of course, assume you have powerd installed and your
  # UPS connected and working correctly.
  pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"
  
    # If power was restored before the shutdown kicked in, cancel it.
  pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"
  
    ###在2、3、4、5级别上以ttyX为参数执行/sbin/mingetty程序,打开ttyX终端用于用户登录,如果进程退出则再次运行mingetty程序(respawn)
  # Run gettys in standard runlevels
  1:2345:respawn:/sbin/mingetty tty1
  2:2345:respawn:/sbin/mingetty tty2
  3:2345:respawn:/sbin/mingetty tty3
  4:2345:respawn:/sbin/mingetty tty4
  5:2345:respawn:/sbin/mingetty tty5
    6:2345:respawn:/sbin/mingetty tty6

  ###在5级别上运行xdm程序,提供xdm图形方式登录界面,并在退出时重新执行(respawn)
  # Run xdm in runlevel 5
  x:5:respawn:/etc/X11/prefdm -nodaemon

系统相关的脚本,命令与日志

1./etc/rc.d/init.d

该目录保存了各运行级别的启动脚本。这样我们就可以手工启动/关闭系统中任何一个服务[与/etc/init.d/目录作用相同,在CentOS 5.x中/etc/init.d只是一个连接文件]

如:手动启动ssh  /etc/rc.d/init.d/sshd #提示选项信息

2.dmesg:查看启动所有信息,查看硬件是否被内核所识别

dmesg | grep eth0 // 查看加载信息

dmesg | grep sda // 查看第一块硬盘加载信息


3.系统所有的目录文件都保存在/var/log文件目录下

检查系统日志/var/log/messages,查找可能被dmesg忽略的应用程序错误!

设置程序开机自启动

法1.生成软链接 ln -s

如: 编写脚本/etc/rc.d/init.d/msg.sh

data >> /root/msg.today
who >> /root/msg.today
free >> /root/msg.today

chmod u+x /etc/rc.d/init.d/msg.sh

ln -s /etc/rc.d/init.d/msg.sh /etc/rc.d/rc3.d/S100msg.sh

法2.chkconfig: 只能更改系统默认安装的服务

chkconfig --list #查看所有运行级别缺省状态下所有的启动程序

chkconfig --list sshd #只是显示sshd的启动情况

chkconfig --levels 2345 sshd off

Chkconfig 其他选项


法3、ntsysv

如果敲击ntsysv则是更改当前运行级别的启动设置

其他运行级别:ntsysv -- levels 3

[比较简单直观,但是很多UNIX系统并没有这个服务]

action常用取值:

1、 initdefault,sysinit

2、 wait:执行process中指定的命令,并等其结束再运行其他命令

once:执行process中指定的命令,不等待其结束

3、 ctrlaltdel:按下Ctrl+Alt+Del时执行process指定

4、 respawn:一但process指定的命令运行终止,则重新运行该命令

5、 powerfail:当出现电源错误时执行process指定的命令,不等待其结束

powerokwait:当电源恢复时执行process指定的 命令的命令

Linux启动流程总图


inittab文件剖析[CentOS 5.X](第二版)的更多相关文章

  1. Linux操作系统(第二版)(RHEL 8/CentOS 8)

    Linux操作系统(第二版)(RHEL 8/CentOS 8) http://www.tup.tsinghua.edu.cn/booksCenter/book_08172501.html Linux操 ...

  2. 《python基础教程(第二版)》学习笔记 文件和素材(第11章)

    <python基础教程(第二版)>学习笔记 文件和素材(第11章) 打开文件:open(filename[,mode[,buffering]]) mode是读写文件的模式f=open(r' ...

  3. Linux操作系统(第二版)(RHEL 8/CentOS 8)——勘误表

    Linux操作系统(第二版)(RHEL 8/CentOS 8)--勘误表 http://www.tup.tsinghua.edu.cn/booksCenter/book_08172501.html 本 ...

  4. Linux常用命令(第二版) --文件搜索命令

    文件搜索命令 1.which /usr/bin/which #显示系统命令所在目录,绝对目录,不能查找文件 格式:which [系统命令] e.g. which ls 附-whereis:也可以查找到 ...

  5. 转:嵌入式linux启动时运行的inittab文件

    嵌入式系统下的linux启动配置文件,不同与普通的PC linux启动配置,启动相关文件与文件的内容也要少得多.嵌入式系统下的linux启动过程一般是:     1 在bootloader中制定各种要 ...

  6. [转载]嵌入式linux启动时运行的inittab文件

    源地址:https://www.cnblogs.com/yfz0/p/5853826.html 嵌入式系统下的linux启动配置文件,不同与普通的PC linux启动配置,启动相关文件与文件的内容也要 ...

  7. 分布式文件系统MFS(moosefs)实现存储共享(第二版)

    分布式文件系统MFS(moosefs)实现存储共享(第二版) 作者:田逸(sery@163.com) 由于用户数量的不断攀升,我对访问量大的应用实现了可扩展.高可靠的集群部署(即lvs+keepali ...

  8. 读书笔记:JavaScript DOM 编程艺术(第二版)

    读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ...

  9. (转载)持续集成(第二版)[来自:Martin Fowler]

    转载自:iTech的博客 持续集成(第二版) 作者:Martin Fowler 译者:雷镇 持续集成 是一种软件开发实践.在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以 ...

随机推荐

  1. iOS 中捕获截屏操作

    转自:iOS知识小集 在iOS 7后,苹果提供了UIApplicationUserDidTakeScreenshotNotification通知来告诉App用户做了截屏操作.苹果的描述如下: // T ...

  2. 【Android应用开发】 Universal Image Loader ( 使用简介 | 示例代码解析 )

    作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50824912 相关地址介绍 : -- Universal I ...

  3. popupwindow中EditText获取焦点后自动弹出软键盘

    关于popupwindow中EditText获取焦点后自动弹出软键盘的问题,玩过手机qq或空间的童鞋应该知道,再点击评论时会弹出一个编辑框,并且伴随软键盘一起弹出是不是很方便啊,下面我们就来讲一下实现 ...

  4. [uwsgi]使用建议(类似最佳实践)

    看了下uwsgi官方的一个使用建议,之前都是直接参考了下django文档中那个比较简单的配置或者就写了个能运行的配置,么有注意很多细节问题,这里学习下,把需要的配置添加到项目配置中. 1 http a ...

  5. 禁止通过网页URL访问文件夹 asp.net

    我们可以通过如下的两种办法,禁止用户通过浏览器的URL地址直接访问网站服务器的文件夹. 一.通过类和配置文件限制 ①NET C#代码 新建一个类,继承IHttpHandler using System ...

  6. FORM触发器

     FORM级触发器 PRE-FORM该触发器是在用户双击功能后,进入form前 WHEN-NEW-FORM-INSTANCE该触发器是在用户一进入form时执行 WHEN-FORM-NAVIGAT ...

  7. 【ShaderToy】边栏的小雨伞

    写在前面 我在9月份的时候对博客的主页换了个模板,一些童鞋可能会发现边栏多了个小雨伞的动画,再细心的同学可能会发现如果一直开着我的博客电脑耗电更快了--当然啦,也有可能你看到的是一团黑,这说明你该换更 ...

  8. Cocos2D:变换(transforms)在图形编程中扮演的角色

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交 ...

  9. ubunut系统清理系统根目录下缓存文件夹.cache超大导致磁盘不足

    在使用中突然发现系统超慢,没有做什么特别的操作. 只好重启下电脑,重启后提示系统空间不足1G.挨个查看文件夹大小,没有发现问题,然后就用Ctrl + H显示隐藏文件夹后再继续逐个查看大小,发现.cac ...

  10. linux shell 判断文件是否存在等符号

    -a file exists.  -b file exists and is a block special file.  -c file exists and is a character spec ...