您的位置:首页 > 运维架构 > Linux

Linux系统启动流程学习笔记

2015-09-12 10:59 931 查看
1.POST --> BIOS(Boot Sequence[检查启动次序]) --> MBR(MBR只是存储空间,bootloader加载到MBR上[找到硬盘上装有系统的分区,并加载系统的内核],446Byte) --> Kernel(bootloader将内核加载到内存后,内核就获得了系统控制权,探测硬件,加载驱动) --> initrd (虚拟根,也是由bootloader加载,被kernel使用)--> init(/sbin/init 用户空间主导程序,/etc/inittab)

2.kernel加载:文件系统、进程管理、内存管理、网络管理、安全功能、驱动程序

3.存放根/的文件系统叫 rootfs根文件系统

4.内核初始化完成后必须加载根文件系统,之后找到根,才能加载/sbin/init

5.内核设计风格:
单内核:把所有功能都做进内核,Linux (LWP)
内核包括核心和外围模块(/lib/modules/内核版本号)
核心: ko(kernel object)可以动态加载各种外围内核模块,需要哪个装载哪个,保证内核足够小
微内核:支持多线程 Windows,Solaris

6.chroot : chroot /PATH/TO/TEMPROOT [COMMAND...] : 根切换
chroot /test/virroot /bin/bash

7.ldd /PATH/TO/BINARY_FILE : 显示二进制文件所依赖的共享库

8.启动的服务不同:
运行级别:0-6
0:halt 关机
1:single user mode 直接以管理员身份切入
2:multi user mode, no NFS 接近正常模式,但是不启用NFS
3:multi user mode, text mode 命令模式
4:reseved 尚未定义,保留级别
5:multi user mode, graphic mode 图形界面
5:reboot 重启

9.详解启动过程
bootloader(是个程序,在MBR中)
LILI: linux loader 过时,不能引导大磁盘,不过在嵌入式系统能用
GRUB: Grand Unitfied Bootloader
Stage1: MBR (第一阶段引导第二阶段)
Stage1_5
Stage2: /boot/grub/

10./etc/grub.conf

default=0 # 是定默认启动的title,从0开始
timeout=5 # 等待用户选择的超时市场,单位秒
splashimage=(hd0,0)/grub/splash.xpm.gz # grub的背景图片
hiddenmenu # 隐藏菜单
password --md5 $1$UAVMI$TSWjrlLHJKsucedSsmWDf/
title godben linux # 内和标题,或操作系统名称,字符串,可自由修改
root (hd0,0) # 内和文件所在的设备:对grub而言,所有类型硬盘一律hd,格式为(hd#,N) hd#,#表示第几个磁盘,最后的N表示对应磁盘的分区
kernel /vmlinuz-2.6.32-131.0.15.el6.i686 ro root=UUID=fe0c9033-3c0f-4dad-8903-8060ecdbe789 rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=zh_CN.UTF-8 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet # 内和文件路径,及传递给内核的参数
initrd /initramfs-2.6.32-131.0.15.el6.i686.img # ramdisk文件路径,虚根
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LINUX linux启动流程