提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

一、Linux操作系统引导过程

二、系统初始化进程

三、排除启动类故障

3.1模拟修复MBR扇区故障问题

3.2  修复GRUB引导故障

3.3遗忘root用户的密码怎么更改




提示:以下是本篇文章正文内容,下面案例可供参考

一、Linux操作系统引导过程

1.开机自检
服务器主机开机以后,将根据主板BIOS中的设置对CPU、内存、显卡、键盘等设备进行初步检测,检测成功后根据预设的启动顺序移交系统控制权,大多时候会移交给本机硬盘。
总结:检测出第一个能够引导系统的设备,比如硬盘或者光驱

2.MBR 引导
当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中MBR(主引导记录)的设置,将系统控制权传递给包含操作系统引导文件的分区;或者直接根据MBR 记录中的引导信息调用启动菜单(如 GRUB)。
总结:运行放在MBR扇区里的启动GRUB引导程序

3.GRUB 菜单
对于Linux操作系统来说,GRUB(统一启动加载器)是使用最为广泛的多系统引导器程序。系统控制权传递给GRUB以后,将会显示启动菜单给用户选择,并根据所选项(或采用默认值)加载Linux内核文件,然后将系统控制权转交给内核。
CentOS 7 采用的是 GRUB2 启动引导器。
总结:GRUB引导程序通过读取GRUB配置文件/boot/grub2/grub.cfg,来获取内核和镜像文件系统的设置和路径位置

4.加载 Linux 内核
Linux内核是一个预先编译好的特殊二进制文件,介于各种硬件资源与系统程序之间,负责资源分配与调度。内核接过系统控制权以后,将完全掌控整个Linux操作系统的运行过程。
CentOS 7系统中,默认的内核文件位于“/boot/vmlinuz-3.10.0-514.el7.x86_64”。
总结:把内核和镜像文件系统加载到内存中

5.init 进程初始化
为了完成进一步的系统引导过程,Linux内核首先将系统中的“/sbin/init”程序加载到内存中运行(运行中的程序称为进程),init 进程负责完成整个系统的初始化,最后等待用户进行登录。
总结:加载硬件驱动程序,内核把init进程加载到内存中运行

传统sysvinit依赖于串行执行 Shell 脚本启动服务,导致效率低下,系统启动速度较慢
systemd能够将更多的服务进程并行启动,并且具有提供按需启动服务的能力,使得启动更少进程,从而提高系统启动速度。

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、系统初始化进程

1、init进程
●由linux内核加载运行/sbin/init程序
●init进程是系统中第一个进程
●init进程的PID(进程标记)号永远为1

2、Systemd
●Systemd也是linux操作系统的一种init软件
●CentOS7采用全新的Systemd启动方式,取代传统的SysVinit
●CentOS中运行的第一个init进程是/lib/systemd/systemd

三、排除启动类故障

●MBR位于第一块硬盘(/dev/sda)的第一个物理扇区处,总共512字节

应用场景

●故障原因
病毒、木马等造成的破坏
不正确的分区操作、磁盘读写误操作

●故障现象
找不到引导程序,启动中断
无法加载操作系统,开机后黑屏

●解决思路
应提前做好备份文件
以安装光盘引导进入急救模式
从备份文件中恢复

3.1模拟修复MBR扇区故障问题

步骤一

先创建一个备份磁盘并分区

fdsik /dev/sdb     进行分区

2.格式化磁盘并挂载到指定目录

[root@ky17 bao]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=1310656 blks=                       sectsz=512   attr=2, projid32bit=1=                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5242624, imaxpct=25=                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2=                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@ky17 bao]# cd /home
[root@ky17 home]# cd
[root@ky17 ~]# mkdir /back
[root@ky17 ~]# mount /dev/sdb1 /back
[root@ky17 ~]# df -Th
文件系统       类型      容量  已用  可用 已用% 挂载点
/dev/sda3      xfs        57G  4.7G   52G    9% /
devtmpfs       devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs          tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs          tmpfs     1.9G   13M  1.9G    1% /run
tmpfs          tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1      xfs       497M  167M  330M   34% /boot
tmpfs          tmpfs     378M   12K  378M    1% /run/user/42
tmpfs          tmpfs     378M     0  378M    0% /run/user/1000
/dev/sdb1      xfs        20G   33M   20G    1% /back
[root@ky17 ~]#

3.把主磁盘数据备份到sdb1

mbr.bak是备份文件 bs是字节数 MBR只有512个字节

[root@ky17 ~]# dd if=/dev/sda of=/back/mbr.bak bs=512 count=1
记录了1+0 的读入
记录了1+0 的写出
512字节(512 B)已复制,0.000226775 秒,2.3 MB/秒
[root@ky17 ~]#

4.模拟破坏MBR引导扇区

zero是空洞文件

[root@ky17 ~]# dd if=/dev/zero of=/dev/sda bs=512 count=1
记录了1+0 的读入
记录了1+0 的写出
512字节(512 B)已复制,0.000182723 秒,2.8 MB/秒
[root@ky17 ~]#

5.init 6重启虚拟机,进入急救模式

选择白色光标位置回车

输入1选择continue  回车

6.创建目录并挂载备份磁盘

7.恢复备份

8.exit回车等待重启  成功恢复

3.2  修复GRUB引导故障

方法一

和修复MBR扇区方法一致把bs=512改为bs=446就可以了(因为DRUB2就占446个字节)

方法二

1.引导界面进入急救信息

init6重启虚拟机

[bao@ky17 ~]$ su
密码:
[root@ky17 bao]# cd /home/
[root@ky17 home]# rm -rf /boot/grub2/grub.cfg
[root@ky17 home]# init 6

2.重启后输入exit      回车进入系统界面选择急救模式

.

输入1选择continue  回车

3.加载镜像,切换到系统根环境,并重新将grub安装到sda的MRB 扇区

4.重新构建GRUB菜单的配置文件

5.退出chroot,并重启

6.成功

3.3遗忘root用户的密码怎么更改

方法一 适用于有镜像文件的情况

●进入急救模式,加载系统镜像,切换到系统根环境

sh-4.2# chroot /mnt/sysimage

●重设root用户密码

bash-4.2# passwd root

方法二 适用没有镜像文件的情况

1.在这个界面按e键

2..编辑修改∶大约在第16行找到"ro" 将"ro" 修改为" rw init=/sysroot/bin/bash";3.按Ctrl+X重启

如果找不到ro 方向键向下按就可以了

3.ctrl+x后进入这个界面

4.输入chroot /sysroot

passwd root 更改密码

输入LANG=en_US.UFT-8去除乱码(不输入也可以改,只是不方便看)

再次输入passwd root 更改密码

设置密码

5.退出重启

6.重启验证root密码

代码如下(示例):


该处使用的url网络请求的数据。


Linux系统引导过程及排除启动故障相关推荐

  1. Linux系统引导过程及故障排除

    Linux系统引导过程及故障排除 一.Linux操作系统引导过程 二.系统初始化进程 三.排除启动类故障 (一)修复MBR扇区故障 (二)修复GRUB引导故障 (四)遗忘root用户的密码 一.Lin ...

  2. Linux系统引导过程(BIOS和Bootloader部分)

    Linux系统引导过程(BIOS和Bootloader部分) 刘建文( http://blog.csdn.net/keminlau ) KEY:x86体系 CPU 系统引导 启动过程 Linux LI ...

  3. linux 更改 引导分区,Linux系统引导过程及引导修复

    0.Linux系统引导过程: 1.通电 2.bios初始化 3.磁盘引导阶段 4.grub2文件引导程序 5.内核加载 6.系统初始化镜像 7.系统启动级别 8.超级用户密码 以下内容是针对各过程会出 ...

  4. Linux系统引导过程及引导修复详解

    Linux系统引导过程及引导修复 前言: 在我们启动Linux系统时,需要先通电,接着系统会自动进行bios初始化,对硬件进行检测并初始化硬件时钟,之后就进入了 Linux系统引导过程.Linux系统 ...

  5. Linux系统引导过程及修复

    Linux系统引导过程及修复 1.通电 2.bios初始化 2.1 bios简介 2.2作用 3.磁盘引导 3.1mbr 3.2当mbr数据丢失系统会因为找不到启动分区而停止启动 3.2.1问题模拟方 ...

  6. 图文详解Linux系统引导过程及引导修复

    目录 前言 一.磁盘引导与修复 1.模拟问题 2.修复方式 二.grub2 文件引导与修复 1.模拟问题1 2.引导及修复过程 3.模拟问题2 4.引导及修复过程 三.内核加载 1.模拟问题 2.引导 ...

  7. linux分区引导修复工具,linux系统引导过程及引导修复

    系统的引导过程 1.通电 2.bios初始化 eg:内存,硬盘没插好 3.磁盘引导 硬盘里面的数据是以分区形式保存,硬盘上的磁头对硬盘的数据进行扫描 ## 磁道:磁头转一周的轨迹,可以确定数据在哪一环 ...

  8. Linux系统引导过程及修复引导

    目录 一.bios初始化 二.磁盘引导 1.mbr:主引导记录,446字节 2.问题模拟方式 三 .磁盘丢失 1.虚拟机中破坏系统引导 2.进入挽救模式 3.修复 4.磁盘进入 三.grub2文件引导 ...

  9. 第八章 linux系统引导过程及引导修复

    1.bios初始化 虚拟机可通过如下方法进入 调整默认启动 关闭selinux vim /etc/sysconfig/selinux 2.磁盘引导 mbr=主引导记录=0磁道1扇区446 作用: 记录 ...

最新文章

  1. android 数字时钟代码大全,Android自定义view实现数字时钟
  2. boost::fusion::convert用法的测试程序
  3. 如何卸载pip 重新安装mysql_pip install cymysql失败的解决办法 | 厘米天空
  4. 炒房客身家过亿 曝炒房心得及地产10大真相
  5. php 继承多个接口,PHP接口多继承及tarits实现多继承效果的方法
  6. html 内嵌xml数据库,是否可以在SQLite数据库中存储XML/HTML文件?
  7. 基于JAVA+SpringBoot+Mybatis+MYSQL的送水公司后台管理系统
  8. web.xml 基本配置
  9. MySql基础汇总-DDL DML DQL DCL,存储过程,事务,触发器,函数等
  10. android 自动更新
  11. c语言else不运行,if...else if..else第三句不执行?
  12. VR打造视觉盛宴,丰富精彩生活
  13. SqlParameter类——带参数的SQL语句
  14. 全网首发:成功解决UOS系统上运行JAVA程序任务栏名称问题
  15. Shiro 放行Swagger
  16. C语言实现去掉字符串中重复的字符
  17. SQL Server with ties 语句
  18. js如何修改对象的padding属性
  19. 如何做一个基于微信电子书阅读小程序系统毕业设计毕设作品
  20. 算法工程 # 深度学习算法落地最后一公里:工业界中的大规模向量检索

热门文章

  1. 敏捷开发“松结对编程”实践之三:共同估算篇(大型研发团队,学习型团队,139团队,师徒制度,敏捷设计,估算扑克,扑克牌估算) .
  2. 在TITAN RTX 2080Ti 上安装 Ubuntu18.04+Nvidia-430显卡驱动+配置深度学习环境(1)
  3. 项目经理的进阶之路——项目集管理
  4. 100句记住7000单词
  5. go语言学习笔记(三)
  6. 低功率、运动传感器 PYQ 1548/7659 特性及应用
  7. WeRateDog---分析推特数据
  8. 高数 下总复习 完结
  9. 送外卖优先级_如何在恶劣天气让外卖小哥优先送您的订单?
  10. AI人工智能简介和其定义