Linux基础知识及系统管理(三):Linux引导流程解析

 

一、Linux引导流程

 

1、固件设置(firmware)   POST加电自检

       软硬件时钟同步

       date    软件时钟命令

       hwclock 硬件时钟命令

              修改时钟,,,hctosys 硬件时钟为准,修改软件时间

                           dydtohc

2、自举程序(BootLoader  GRUB) 载入内核

3、载入内核(Kernel)         驱动硬件

       内核   kernel /boot/vmlinuz-2.6.18-194.el5

                                        版本号

4、启动进程(init)

       init启动后读取inittal文件,执行缺省运行级别,从而继续引导进程

       PID始终为1,向更高级的功能负责:PID为0的内核调度器(Kernel scheduler),从而获得CPU时间

5、读取执行配置文件/etc/inittab

二、Linux运行级别

       # Default runlevel. The runlevels used by RHS are:

    #   0 - halt (Do NOT set initdefault to this)

    #   1 - Single user mode

    #   2 - Multiuser, without NFS (The same as 3, if you do not         have networking)

    #   3 - Full multiuser mode

    #   4 - unused

    #   5 - X11

#   6 - reboot (Do NOT set initdefault to this)

 

       查看当前运行级别   #runlevel

       切换运行级别   #init [0123456Ss]    #telinit [0123456Ss]

三、linux启动服务管理

1、inittab文件解析

       在inittab中,所有条目采取一下格式:

       id:run-levels:action:process

         id:标识符,一般为两位字母或数字

         run-levels:指定运行级别,可以指定多个

         action:制定运行状态

         process:指定要运行的命令/脚本

 

       action常取值:

         iniedefault:指定系统缺省启动的运行级别

                     系统默认位3,,

         sysinit:系统启动执行process中指定的命令  /etc/rc.d/rc.sysinit

         wait:执行process中指定的命令,并等其结束再运行其他的命令

         once:执行process中指定的命令,不等其结束

         ctrlaltdel:按下Ctrl+Alt+Del时执行process指定的命令

 

       /etc/rc.d/rc   判断默认运行级别,执行相应运行级别目录中的服务程序,完成初始化

       /etc/rc.d/rc[0123456].d  分别存放对应于运行级别的服务程序脚本的符号链接,链接到init.d目录的相应脚本

              格式:S12syslog

                S-start 启动    K-kill 不启动  ***

                数字:启动顺序

                定义脚本名称

       /etc/rc.d/init.d  该目录包含各个运行级别的服务程序脚本  ***

2、设置自启动程序

       (1)ln -s   通用

        (2) chkconfig

        (3) ntsysv

3、相关命令及日志

       (1)运行dmesg检查引导期间的错误

       (2)检查系统日志/var/log/messages,查找可能被dmesg忽略的应用程序错误

四、GRUB配置与应用

       GRUB的配置文件的默认位置 /etc/grub.conf

        (hd0,0)

1、GRUB配置选项

       default 定义缺省启动系统

       timeout 定义缺省等待时间

       splashimage 定义GRUB界面图片

       hiddemenu 隐藏菜单

       title 定义菜单项名称

       root 设置GRUB的根设备即内核所在的分区

       kernel 定义内核文件所在位置

       initrd 命令加载镜像文件

2、GRUB命令

       e:编辑当前的启动菜单项

       c:进入GRUB的命令模式

       b:启动当前的菜单项

       d:删除当前行

       Esc:返回GRUB启动菜单界面,取消对当前单项所做的任何修改

3、设置GRUB密码

(1)、使用GRUB自带的命令grub-md5-crypt命令

              # grub-md5-crypt

              Password:

              Retype password:

              $1$XHXdi/$jk.lm6Tcn99v/52jLaQkw0

(2)、在GRUB交互命令行界面中使用md5crypt命令

              #grub

              grub>

                        md5crypt

 

              Password:

                     ******

              Encrypted: $1$WuXdi/$kBtdDg/gytHDS8t3FvAsQ.

(3)、编辑GRUB配置文件,加入如下行:

              password --md5 $1$XHXdi/$jk.lm6Tcn99v/52jLaQkw0

              --md5  参数表示口令是MD5加密的

五、启动故障分析与解决

1、GRUB修复

 (1)、当开机后进入grub界面但没有菜单,只剩下一个grub>提示符,解决方法:

              grub>cat /boot/grub/grub.conf  查看参数

              修改

              grub>boot

(2)单用户模式 

          实例1:root密码忘记

              进入但用户模式重新设置root密码

                方法:开机进入GRUB界面,按e进入编辑模式,选中kernel行,再次按e见,在新的姐年的最后一行输入1或s,即可

 

(3)GRUB修复模式

          实例2:inittab文件缺失

              解决过程

               ①、把安装盘放到光驱,然后重新启动机器,在bois中把系统用光驱引导

               ②、等安装界面出来,按F5键,也就是linux rescue模式

                     然后在boot输入

                     linux rescue

                     然后就是回车一下

                     sh#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值