linux的启动及其运行级别

一、启动过程
1. 过程:开机→加载 BIOS ,硬件自检,取得第一个开机装置的代号→读取 MBR 中的启动引导程序(如 grub lilo )→启动 linux 内核→由内核运行 init 进程,根据 init 配置文件进入指定的运行级别→根据 init 配置文件中的设置启动相应的服务程序→运行控制台程序,提示用户输入账号密码
二、运行级别
1. linux 中分为 7 个级别,用数字 0-6 代表
0 :停机,不要把系统默认的运行级别设置为 0
1 :单用户模式,用于 root 用户对系统进行维护,不允许其他用户使用主机
2 :多用户模式,在该模式下不能使用 NFS( 网络文件系统,即不能联网 )
3 :完全多用户模式,主机作为服务器时使用该模式
4 :未分配使用
5 :图形登录的多用户模式,使用 Linux 的图形界面操作环境,一般个人使用该模式
6 :重新启动,不要把系统默认的运行级别设置为 0
2. 显示系统当前的运行级别
1 )命令格式: runlevel
2 )运行结果 X Y   (X,Y 都是 0-7 数字 )  1 5
X 表示上次的运行级别,当 X N 时表示,系统中不存在上次运行的级别
Y 表示当前所在的运行级别,
3. 改变系统运行级别
1 )命令格式: init [0 1 2 3 4 5 6]
2 )要改变运行级别时,输入 init 级别 就可
三、系统服务程序在各个运行级别的启动状态(即 系统进入这个级别时,服务程序运不运行)
1. 命令 chkonfig
2. 作用,查看和设置系统中所有服务在各运行级别中启动的状态,包括 xinetd 服务管理的服务程序( xinetd 服务管理的服务程序即非独立的服务程序)
3. 查看全部服务启动状态:
1 )格式 chkconfig --list
4. 查看某个服务启动状态
1 )格式 chkconfig --list 服务名称
chconfig �Clist kudzu ( 查看 自动检测硬件( kudzu )” 这个服务在启动时的运行状态 )
2 )输出(显示)的格式: 服务名称 0 off/on 1: off/on 2: off/on 3: off/on 4: off/on 5: off/on 6: off/on
off :关闭,不运行                                  on :(启用 运行)
kudzu           0: 关闭   1: 关闭   2: 关闭   3: 启用   4: 启用   5: 启用   6: 关闭
表示: kudzu 服务 0 运行级别启动时是不运行的 1 不运行的 2 不运行的 3 启动运行 4 运行 5 运行 6 不运行
5. 设置独立服务的启动状态
1 )命令格式 chkconfig --level 运行级别列表 服务名称 [no/off/reset]
运行级别列表 0-6 可以是以个也可以是多个
服务名称:独立的
no 开启 off 关闭 reset 重置,恢复到安装 Linux 时默认的状态
2 )例如 chkconfig �Clevel 24 syslog on 表示在设置 syslog 服务在 2 4 运行级别中为开启
6. 设置非独立服务的启动状态
1 )命令格式 chkconfig 服务名称 on/off/reset
服务名称:非独立的,依赖于 xinetd 服务进程启动的服务
no 开启 off 关闭 reset 重置,恢复到安装 Linux 时默认的状态
2 )记住,每次对非独立的服务启动进行了更改,要重启 xinetd 服务
即用 service xinetd restart 重启 xinetd 服务
四、 INIT 进程
1.INIT 进程: INIT 进程是有 linux 内核引导运行的,是相同中运行的第一个进程,进程号为 1
2.INIT 的配置文件 -------inittab 位于 /etc/inittab
3.inittab 文件解析
1 )作用:用于描述系统启动时和正常运行中将运行哪些进程
2 )每行的格式 id runlevels action process   ID :级别:动作:命令
1 2345 respawn /sbin/mingetty tty1
3 )有 # 开头的表示注释行
4.id 字段:表示 inittab 文件中唯一的标识一个配置记录,由 1-4 个字符组成可以是数字或字母
id 字段 理解为一个配置记录的名字
5.runlevels 字段(级别):指定该记录在哪些运行级别中运行,由 0-6 组成,可以是以个运行级别,也可以是多个运行级别
6.action 字段(动作):描述记录将执行那种类型的动作,常见设置有: initdefault sysinit wait ctrlaltdel powerfail powerokwait respawn
1 initdefault
①用于标识系统启动后进入那个运行级别
②如 id:5:initdefault: 表示系统进入时,进入第 5 个级别
③在前面加 # 时,表示注释这行,启动时会提示要你输入进入的级别
2 sysinit
①进程将在系统启动时在任何 boot bootwait 类进程之前运行,使用时, runlevels 字段将被忽略
②如 si::sysinit:/etc/rc.d/rc.sysinit
3 wait
①进程将进入指定运行级别后运行一次, init 进程将等待其结束
4 ctrlaltdel
①用于指定按下 Ctrl+Alt+Delete 组合键后系统将要干什么
②如 ca::ctrlaltdel:/sbin/shutdown -t3 -r now
按下组合键后,在字符界面时,将在 3 分钟后重启
③在前面加 # 时,表示注释这行,关闭此功能
5 powerfaill
①用来指定当 UPS 发来断电信号时,系统要运行的命令
6 powerokwait
①指定当供电恢复是要运行的命令
7)respawn
①进程结束运行后会重新起点运行
②如
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
7.process 字段(命令):设置的是启动进程所执行的命令
五、系统初始化脚本
1. 使用 rc.sysinit 作为系统的初始化脚本
2. 位置: /wct/cr.d/ 目录中
六、 rc.local 脚本
1 .在系统启动过程中,执行网初始化脚本后,执行 rc.locl 脚本
2. 位置: /etc/rc.local
3. 相当于 windows 系统中的“启动”即开机后执行这里面的程序
七、服务程序的操作
1 .命令格式 sevrvice 服务名 [start/stop/restart/starus]
服务名称:任何服务程序
start :开启 stop 停止 restart 重启 starus :查询服务程序的运行状态
2. 命令还可以写成:要设置的服务的绝对路径 [start/stop/restart/starus]
 

你可能感兴趣的:(linux,service,chkconfig,init,runlevel)