Linux 启动过程

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 握手包跑包

各位好 又见面了 我是曹操 今天给大家带来一篇新的教程

希望各位细心学习 低调用网

①.检查整个系统的硬件状态(cpu,内存,显卡,网卡等)。 
②.根据BIOS当中的启动顺序(硬盘,U盘,光驱,网络等)【硬盘启动==读取硬盘的0柱面0磁道1扇区(MBR)的前446字节(共512,后64为磁盘分区列表)到内存】
③.控制区转给MBR当中的bootloader 
① stage1是安装时被写入到MBR当中的,因MBR的空间有限,所以MBR当中安装有bootloader的最小程序,主要作用启动装载stage2
② stage1.5在MBR后面的分区,可以识别启动分区文件系统,stage1.5是stage1和stage2的桥梁。GRUB访问/boot分区grub下面的stage文件,将stage2文件载入内存并执。
③ stage2阶段解析grub的配置文件 /boot分区下的/grub/grub.conf文件,显示操作系统的启动菜单,加载内核到镜像,通过/boot/initrd开头的文件虚拟DAM disk虚拟文件系统转交给内核。

第一阶段.硬件启动流程 ### 1.开启电源 ### 2.BIOS(基本输入输出系统) ### 3.MBR(主引导记录)硬盘中的第一个扇区–MBR包含主引导程序、硬盘分区表和有效的硬盘标识。MBR中的引导加载程序(bootloader)的一部分是GRUB程序,在系统安装时写入。

​     0 - halt (系统直接关机)
  1 - single user mode (单人模式,用于系统维护时使用)
  2 - Multi-user, without NFS (类似3模式,不过少了NFS服务)
  3 - Full multi-user mode (完整模式,不过,是文本模式)
  4 - unused (系统保留功能)
  5 - X11 (与3模式类似,不过,是X终端显示)
  6 - reboot (重新开机)

第二阶段.GRUB启动引导阶段

u盘启动cdlinux步骤

第三阶段.内核引导阶段 调用虚拟根文件系统中的init,加载驱动模块初始化系统设备并进行相关配置,包括CPU、I/O和存储设备,并加载真正的根文件系统(由grub.conf中的“root=”指定),协助内核调用/sbin/init程序。

1. 获取网络环境与主机类型
2. 打开文本欢迎信息
3. 决定是否启动selinux
4. 测试与载入内存设备/proc及usb设备
5. 接口设备的检测与即插即用(pnp)参数的测试
6. 挂载所有在fatab当中定义的文件系统
7. 加载核心的相关设置,按“/etc/sysctl.conf”文件设定的内核参数的值
8. 设置系统时间
9. 设置中终端控制台的字形
10. 设置raid与LVM等硬盘功能
11. 以fack检查磁盘文件系统
12. 进行磁盘配额quota的转换
13. 重新以可读取模式载入系统磁盘
14. 启动quota功能
15. 启动系统随机数设备
16. 清楚启动过程中的临时文件
17. 将启动相关信息加载到/var/log/dmesg文件中
 1./etc/rc.d/rc#.d   根据对应运行级别启动启动对应/etc/rc.d/rc#.d 目录下的服务(#为0-6) s start k stop
2. /etc/rc/local  加载用户自定义开机启动的服务
​       */etc/nologin 该文件中的用户不准登录 
​       /etc/usertty  对文件做出附近访问限制。不存在该文件没有限制
​       /etc/securetty  登记的终端才允许使用。没有文件任何终端都可以登录
​      /etc/passwd & /etc/shadow   来验证密码以及设置账号的主目录是什么,使用何种shell

第四阶段.系统初始化阶段 ① 通过/etc/inittab文件获取运行级别

② 通过/etc/rc.sysinit文件进行初始化

③ 加载系统服务

第五阶段.启动终端 1.默认情况下执行/sbin/mingetty打开6个纯文本终端 ① 验证登录 ② 登录成功后,屏幕输出/var/log/lastlog,显示最近一次登录信息,检查/var/spool/mail/用户名以查看是否有新邮件,加载环境变量(/etc/profile、.bashprofile、.bashlogin、.profile)。

  1. 如果运行级别为5,则打开X窗口。
赞(0)