开机后选择一些参数,介质的选择叫做固件信息的识读
一台电脑上出现多个操作系统,下次再开机启动选择要开启的操作系统。
内核存储驱动的列表,可以把不用的删除掉。
然后开启各项服务
第一步:
固件firmware(CMOS/BIOS)加电自检(硬件是否可用,插口)
查看内核,虚拟机中是一台单独的电脑
(软件部分,为了进行控制)
固件本来应该是一段软件控制程序;
但是这段程序和操作系统无关,固化到主板上;
既不能当作硬件部分也不能当做软件部分,是一段控制程序和操作系统没有关系。
加载硬盘只需用命令启动无需操作系统
1)、
驱动和该操作系统相关的硬件设备
内核文件/boot/vmlinuz-2.4.20-8
主要保存各种驱动程序
根据设备的功能对内核进行裁切,内核可大可小,罗列了各种驱动程序。加载各个硬件所使用的驱动程序
第二步:自举程序BootLoader(GRUB)
启动进程 init
读取执行配置文件/etc/inittab(软件的层次上)
init启动后读取inittab文件,执行缺省运行级别。从而继续引导过程。
出现在上边控制所有操作系统
局部变量
只影响所在的程序块
title Red HatLinux (2.4.20-8)
2.4.20-8内核版本号
主版本 .次版本号 :奇数表示测试版,偶数表示正式版
root (hd0,0) 内核所在根目录boot安装的位置
kernel /vmlinuz-2.4.20-8ro root=LABEL=/ 不允许出错,要读到的内核部分
initrd /initrd-2.4.20-8.img 镜像文件
(这部分被称为局部变量)
所有硬件都连接正常
2)、
开启进程init(初始化进程) 将要运行操作系统
该进程所在位置: /etc/inittab 硬件通过固件都识别后找到grub
开启或关闭哪些服务 所开启的服务都被保存到inittab文件中
查看当前运行级别:runlevel
完成运行级别的切换:init n切换运行级别
运行级别
0:关机
1:单用户模式,只允许root用户登陆 直接使用命令试
2、3:字符型界面 命令行方式 2不能实现上网操作
4:被保留级别 扩展项
5:图形化界面
6:重启
不要设置为0或者6,4没有被用到。
当前默认运行级别:5
切换运行级别: # init n
文件语法:
Id:run-level:action:process
Id:序号
Run-level:指定运行等级
action:状态
process:指定要运行的脚本/命令
id:5:initdefault:
开机后默认运行级别是5(X11)
si::sysinit:/etc/rc.d/rc.sysinit 在任何的运行级别上都适合该状态,只要开机必须执行该操作。系统的init,初始化状态,执行该文件。
::表示所有等级都需要执行最后的命令
Sysinit :进行系统初始化
/etc/rc.d/rc.sysinit :要执行的文件
系统服务程序的开启,环境变量的设置、时钟、加载字体、文件系统、日志文件等 都由sysinit执行后得到
打开后为标准的脚本文件
# !bin/bash
其实就是是各种shell脚本也可以自己编写
在开机启动时会运行一次
/etc/rc.d/rc:判断运行级别并开启响应目录下的指令
每次开机看到的[成功][失败]
如何判断运行等级为1,文件与文件之间是有关联的。
rcn.d n=0-6 来区别运行级别下显示的效果
#ls -l rc5.d
K01samba 操作类型+优先顺序+脚本名称 数字越小优先级别越高,先被杀死。
以K为开头的执行关闭操作-关机
以S为开头的开启服务-
rc0中所看到的都要被关闭掉
# cd /etc/rc.d/rc5.d 创建的链接,每次开机自动加载
#ln -s S100script /home/zhy/script1
不同的rc根据所选等级不同,切换等级的时候有些开启的就被关闭掉了。