Linux系统启动流程及故障修复

该文详细阐述了Linux系统从BIOS加电自检到启动管理器GRUB、内核加载、系统初始化的过程。同时,介绍了systemd的管理工具systemctl及其对服务、设备、挂载点等对象的管理。还涵盖了启动过程中可能出现的故障,如密码重置和MBR故障修复的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、启动过程

BIOS   定义:基本输入输出系统

       作用:加电自检POST(执行硬件初始化)

         引导操作系统(按照特定顺序检测系                统启动程序)

   MBR    定义:主引导记录,512字节

           作用:读取引导程序boot loader(MBR指定硬盘,按照分区表找到硬盘,分区,读取内核文件,找操作系统)

   GRUB   定义:启动管理器

           作用:引导程序,处理内核文件的加载

      注:多操作系统环境,一定要后安装Linux

   内核    作用:测试硬件设备于驱动程序

           位置:通常文件位于/boot目录中(boot目录存放启动相关文件)

                 vmlinz:内核文件

                 initramfs:虚拟文件系统

   主程序   定义:system daemon 系统守护进程,是linux下的初始化软件

            作用:实现系统初始化,生成并启动其他环境相关的程序

初始化     定义:提供一个可交互的操作系统界面

二、systemd程序管理

管理工具: syswemctl

对象类型:service   扩展名:.service

                                    作用:描述系统服务

                 device   扩展名:.device

                                 作用:描述内核能识别的设备文件

                mount   扩展名:.mount

                                作用:描述文件系统的挂载点

               target    扩展名:.target

                                作用:描述一组systemd单元

                swap    扩展名:.swap

                               作用:用于表示swap设备

                path     扩展名:.path

                             作用:用于根据文件系统上特定对象的变化来启动其他服务

  基本操作:

       开启服务                   systemctl start [服务名]

       关闭服务                   systemctl stop [服务名]

       重启服务                   systemctl restart [服务名]

       查看服务状态            systemctl status [服务名]

     设置服务开机自启       systemctl enable [服务名]

     设置服务开机不自启    systemctl disable [服务名]

服务状态:

     active(running)         正在运行

     inactive                         关闭运行

     enabled                        开机启动

     disabled                       开机不启动

     static                            开机不启动,但可能会被其他服务所激活

运行级别

    Init 0        关机

    Init 1        单用户模式

    Init 2        无网络的多用户模式

    Init 3         有网络支持的多用户模式(字符模式)

    Init 4         保留,未使用

    Init 5         有网络支持的多用户模式(图形模式)

三、程序和进程的关系

     程序           一组代码的集合,静态文件

     进程            运行中的程序文件,动态文件

     服务            常驻于内存中的进程

     程序和进程的关系           程序加载到内存中运行,形成进程

四、启动过程中的故障

    1、linux下找回密码

普通用户找回密码:管理员进行修改

管理员找回密码(需要用到单用户模式):

  步骤一:重启系统,在GRUB界面按E进行编辑

         (在linux16行中centos/swap后添加rd.break参数,ctrl+x保存,进入单用户模式)

       步骤二:重新挂载临时文件系统,使接下来可以修改密码

               mount -o remount,rw /sysroot

      步骤三:进入临时文件系统

              chroot /sysroot

      步骤四:修改密码(字符界面下注意密码的复杂性要求,字母+数字+符号  最好不少于12位)

              passwd root

      步骤五:更新配置,运行脚本

              touch /.autorelabel

      步骤六:退出临时文件系统

              exit

      步骤七:重启登录

              Reboot

     2、MBR故障修复(此处为模拟mbr故障)

步骤一:建立备份文件

     使用新的磁盘创建分区,挂载使用

     将MBR备份放入到挂载目录

   Dd if=/dev/sda of=/bf/bf.bak bs=512 count=1

步骤二:模拟MBR损坏

     将原有的MBR区域覆盖掉

   Dd if=/dev/zero of=/dev/sda bs=512 count=1

     重启系统

步骤三:放入系统盘,重新进入救援模式

     Trpubleshooting  问题解决(第三个)

     Rescue a centos system  救援模式(第二个)

 1(continue)  检查分区并挂载到某个目录下,按1继续执行操作

回车   回车键获取一个可操作的shell界面

     步骤四:修复MBR

          Mkdir tmpdir   创建临时挂载目录

          Mount /dev/sdb1 /创建的临时挂载目录   重新挂载,获取分区中的文件

          Dd if=备份文件 of=/dev/sda bs=512 count=1   

          将备份文件覆盖到/dev/sda中

    步骤五:退出重启

         Exit 退出

         Reboot 重启

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱笑的男孩0522

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值