从零开始学Linux系统(一)之引导流程解析

Linux系统:分时多用户多任务的操作系统;

Linux系统引导流程:

inittab配置文件中:

定义了linux系统的运行的7个级别:从0~6

0、6:分别代表关机和重启,不建议设置为默认的运行级别,否则将无法正常使用系统;

4:暂未被使用,留给用户自定义使用;

1:单用户模式,只有管理员可以使用;

2,3:无图形界面,2只比3缺少了NFS(网络文件系统,一种存在安全隐患的网络共享服务)

5:带有图形界面

查看当前的运行级别:   # runlevel       前级别  当前级别

切换运行级别:init/telinit   [0123456Ss]        Ss代表为运行级别1

inittab配置文件内容格式:

定义进程记录:

id(2位标识符) : run-levels(运行级别) : action(运行状态) : process(要运行的脚本和命令)

action取值:

initdefalut(默认值) 

sysinit(与运行级别无关,只要系统就会执行一次)

wait:执行process中的指令,等其结束后在运行其他命令

once:执行process中的指令,不等其结束  (没有被使用过)

ctrlaltdel: Ctrl+Alt+Del时执行process指定的命令(默认是关机指令)=== 所以才有网吧快捷键的关机大法的由来

注:action为sysinit的启动脚本位置在:sysint/ect/rc.d/rc.sysinit 

然后会判断系统的运行级别,去找不同运行级别的启动脚本目录,通过查看文件:S开头表示启动,K开头表示停止,标号越小优先级越高;可以通过修改文件名称,达到不让系统启动某些服务的目的;例如:运行级别3目录 /etc/rc.d/rc3.d 或 /etc/rc3.d

其实目录下所有各种服务的启动脚本文件都是存放在: /etc/rc.d/init.d/  或 /etc/init.d 目录下,这里看到仅仅是软链接而已;

Ctrl + alt + F1~F6 :启动6个终端     F7:是回到原页面

设置自启动程序:

ln -s              ls -s /etc/rc.d/init.d/test   /etc/rc.d/rcdd/S100test

chkconfig       chkconfig --list

ntsysv     

运行dmesg检查引导期间的错误:# dmesg |  grep sda    【检查硬盘启动状态】

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

注:如果命令不好使,可能是同虚拟机中的快捷键冲突了,需要更改虚拟机的快捷键;

原文地址:https://www.cnblogs.com/zhaojinxin/p/7426804.html