linux入门 :系统启动过程


一、固件firmware(CMOS/BIOS)             #加电自检

二、MBR:主引导记录(存放在0主面、0磁头、1扇区)
    #加载bootloader(就是GRUB/NTLDR)(/etc/grub.conf)(载入内核)
    #partition table
    #magic number结束

三、内核(kernel)                    #加载硬件驱动(可以精简内核)

四、启动进程(init)                    #第一个进程(inittab配置文件),执行缺省运行级别
                                    #pid永远为1,向父进程请求(0),0为内核调度器(时间分配与进程切换)
                                    #父进程关闭,子进程全部关闭
                                    #父进程死了,子进程不知道,那么系统会将子进程指向init进程(init是所有进程的父进程)
                                    #大写的Z表示僵尸进程(子进程死了,父进程不知道)

五、读取配置文件(/etc/inittab)      #完成后续的所有引导
                                    #系统不同,配置文件名有可能不同(xxxtab、xxx.conf)
    initdefault                     #如果想让系统启动后运行x window就设置级别为5,默认是3
    /etc/rc.d/rc.sysinit            #只要系统启动这个文件中所设置的服务都会启动
        /etc/rc.d/rc                    #执行对应级别目录中的服务程序(rc1.d\rc2.d\rc3.d\...)
        /etc/rc.d/rcN.d                 #rc1.d目录中存放着相关的服务(N=0-6)
                                        #(有S开头的<启动>、有K开头的<关闭>,运行级别切换就会用到kill)
    wait                            #执行process中指定的命令,并等待其结束再运行其它命令
    once                            #执行process中指定的命令,不等待其结束
    ctrlaltdel                      #按下ctrl+alt+del时执行process指定的命令

六、自启动方法(三种)
    #程序的启动文件一般存放在/etc/init.d/下(/etc/init.d/)
    1、设置软连接(ln -s)
    2、chkconfig对已添加的服务进行启动设置
    3、ntsysv图形更改启动级别

七、dmesg检查引导期间的错误信息
    dmesg | grep eth1   #如果没有显示信息,那么就是没有识别网卡,所以就不需要设置ip地址
    dmesg | grep sda

八、日志【/var/log/】
    /var/log/messages   #某个服务是否启动成功日志信息

九、grub
    1、default设置启动顺序,默认(也就是第一个启动的系统)为0
    2、(hd0,0)它代表/boot/目录
    3、title xxx                 #系统的名称

    在linux启动过程中,可以按esc进入grub界面
    e:编辑当前的启动菜单项
    c:进入GRUB的命令行方式
    b:启动当前的菜单项
    d:删除当前行
    Esc:返回GRUB启动菜单界面,取消当前单项所做的任何修改

十、单用户模式【忘记密码】
    #重启服务器(自检--主引导grup--按e进入编辑模式--选择不同的系统<就是不同的kernel>--再按e输入1或s--进入单用户模式)
    1、按e就进入编辑模式,里面的内容就和/boot/grub/brub.conf中看到的内容一样
    2、然后选中kernel这一行进行编辑,在最后加上1或s就会保存此设置在/boot/grub/grub.conf文件中
    3、回车之后就会进入GRUB的启动引导选择界面,然后选择kernel(这一行的末尾会有刚添加的内容),再按b进入启动
    ======================
    4、系统修复【修改root密码passwd root填写密码,之后登录系统就是新密码了】

十一、光盘修复模式【GRUB、系统密码忘记、inittab文件损坏】
    使用光盘修复
    将当前系统挂载到/mnt/sysimage/目录下,使用chroot /mnt/sysimage/切换目录进入系统文件修复


[root@bogon ~]# runlevel 
N 5
[root@bogon ~]# init 3                 #修改启动级别

你可能感兴趣的:(linux入门 :系统启动过程)