当前位置: 首页 > news >正文

Linux引导故障排除:从问题到解决方案的详细指南

1 BIOS初始化

通电->对硬件检测->初始化硬件时钟

2 磁盘引导及其修复

2.1 磁盘引导故障

磁盘主引导记录(MBR)是在0磁道1扇区位置,446字节。
MBR作用:记录grub2引导文件的位置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 修复

步骤:1、光盘进入系统挽救模式
2、chroot /mnt/sysimage
3、grub2-install /dev/sda ##重新安装grub2到系统硬盘上
4、exit exit

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3 grub2文件引导及其修复

在这里插入图片描述

3.1 主引导文件grub.cfg丢失

/boot/grub2/grub.cfg  #指定/boot位置

在这里插入图片描述

3.2 主引导文件丢失后修复

步骤:
1、指定内核和系统初始化镜像所在磁盘分区
2、加载内核和只读挂载根分区
3、启动引导程序
4、boot

在这里插入图片描述
在这里插入图片描述

grub2-mkconfig > /boot/grub2/grub.cgf

在这里插入图片描述

3.3 引导标题文件丢失

/boot/loader/entries/xxxxxxxxx.conf #指定系统启动时加载文件成名

在这里插入图片描述

3.4 引导标题文件丢失后修复

kernel-install add $(uname -r) /usr/lib/modules/4.18.0-193.el8.x86_64/vmlinuz 

在这里插入图片描述

4 内核加载及其修复

4.1 内核加载

/boot/vmlinuz-$(uname -r)

1、内核负责系统初始化设备
2、复制只读挂载/设备

cp /lib/modules/4.18.0-193.el8.x86_64/vmlinuz /boot/vmlinuz-$(uname -r)

在这里插入图片描述

4.2 内核丢失修复

步骤:
1、进入BIOS
2、使用光盘启动
3、进入挽救模式
4、执行复制命令,复制系统中lib下的内核文件到/boot中即可
5、进入BIOS重新选择硬盘启动进入系统

chroot /mnt/sysimage
cp /lib/modules/$(uname -r)/vmlinuz /boot/vmlinuz-$(uname -r)

在这里插入图片描述

5 系统初始化镜像

5.1 初始化镜像

/boot/initramfs-4.18.0-80.el8.x86_64.img

作用:

  1. 加载系统时钟
  2. 加载selinux
  3. 加载系统主机信息
  4. 加载/etc/fstab文件中磁盘挂在策略
  5. 加载磁盘配额
  6. 初始化系统程序开启开机启动服务
  7. 开启虚拟控制台
  8. 开启图形

5.2 初始化镜像修复

mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)

在这里插入图片描述
步骤:
1、进入BIOS
2、使用光盘启动
3、进入挽救模式
4、执行命令mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
5、进入BIOS重新选择硬盘启动进入系统

在这里插入图片描述

6 系统启动级别及其修复

6.1 系统启动级别

0 关机
1 单用户
2 无图形网络模式
3 无图形网络模式
4 无图形网络模式
5 有图形网络模式
6 重启

在这里插入图片描述

6.2 系统启动修复

步骤:
1、在开机选择界面按<e>进入到引导文件编辑模式
2、在内核加载选项最后加入启动级别5
3、ctrl+x
4、进入系统后恢复启动设定systemctl set-default graphical.target
在这里插入图片描述
在这里插入图片描述

7 root密码忘记修复

恢复:

  1. 在开机选择界面按<e>进入到引导文件编辑模式
  2. 在内核加载选项最后删除到ro选项
  3. 更改ro---->rw
  4. 加入rd.break参数终止系统启动进入单用户模式
  5. ctrl+x启动
  6. chroot /sysroot #转化跟环境
  7. echo lee| passwd --stdin root
  8. touch /.autorelabel #内核级加强型Linux的初始化标识文件,引文selinux打开会阻止单用户模式下修改root密码,所以初始化该文件
  9. exit
  10. exit

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

相关文章:

Linux引导故障排除:从问题到解决方案的详细指南

1 BIOS初始化 通电->对硬件检测->初始化硬件时钟 2 磁盘引导及其修复 2.1 磁盘引导故障 磁盘主引导记录&#xff08;MBR&#xff09;是在0磁道1扇区位置&#xff0c;446字节。 MBR作用&#xff1a;记录grub2引导文件的位置 2.2 修复 步骤&#xff1a;1、光盘进…...

【vim 学习系列文章 6 -- vim 如何从上次退出的位置打开文件】

文章目录 1.1 vim 如何从上次退出的位置打开文件1.2 autogroup 命令学习1.2.1 augroup 基本语法 1.3 vim call 命令详细介绍 1.1 vim 如何从上次退出的位置打开文件 假设我打开了文件 test.c&#xff0c;然后我向下滚动到第 50 行&#xff0c;然后我做了一些修改并关闭了文件。…...

怎样学习C#上位机编程?

怎样学习C#上位机编程&#xff1f; 00001. 掌握C#编程和.NET框架基础。 00002. 学WinForm应用开发&#xff0c;了解控件使用和事件编程。 00003. 熟悉基本数据结构和算法&#xff0c;如链表、栈、队列。 00004. 理解串口通信协议和方法&#xff0c;用于与硬件交互。 00005…...

【算法-动态规划】两个字符串的删除操作-力扣 583

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…...

【06】基础知识:typescript中的泛型

一、泛型的定义 在软件开发中&#xff0c;我们不仅要创建一致的定义良好的API&#xff0c;同时也要考虑可重用性。 组件不仅能支持当前数据类型&#xff0c;同时也能支持未来的数据类型&#xff0c;这在创建大型系统时提供了十分灵活的功能。 在像 C# 和 Java 这样的语言中&…...

flutter 绘制原理探究

文章目录 Widget1、简介2、源码分析Element1、简介2、源码分析RenderObjectWidget 渲染过程总结思考Flutter 的核心设计思想便是“一切皆 Widget”,Widget 是 Flutter 功能的抽象描述,是视图的配置信息,同样也是数据的映射,是 Flutter 开发框架中最基本的概念。 在 Flutter…...

[Java]SPI扩展功能

一、什么是SPI Java SPI&#xff08;Service Provider Interface&#xff09;是Java官方提供的一种服务发现机制。 它允许在运行时动态地加载实现特定接口的类&#xff0c;而不需要在代码中显式地指定该类&#xff0c;从而实现解耦和灵活性。 二、实现原理 基于 Java 类加载…...

机器人命令表设计

演算命令 CLEAR 将数据 1 上被指定的编号以后的变数的内容&#xff0c;以及数据 2 上仅被指定的个数都清除至 0。 INC 在被指定的变数内容上加上 1。 DEC 在被指定的变数内容上减掉 1。 SET 在数据 1 上设定数据 2。 ADD 将数据 1 和数据 2 相加&#xff0c;得出的结果保存在数…...

STM32--WDG看门狗

文章目录 WDG简介IWDGIWDG的超时计算WWDGWWDG超时和窗口值设定独立看门狗工程WWDG工程 WDG简介 WDG看门狗&#xff08;Watchdog Timer&#xff09;是一种常见的硬件设备&#xff0c;在STM32F10系列中&#xff0c;有两种看门狗&#xff0c;分别是独立看门狗和窗口看门狗&#x…...

(※)力扣刷题-字符串-实现 strStr()(KMP算法)

28 实现 strStr() 实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串&#xff0c;在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在&#xff0c;则返回 -1。 示例 1: 输入: haystack “hello”, needle “ll” 输出: 2 示例…...

Redis 集群 Redis 事务 Redis 流水线 Redis 发布订阅 Redis Lua脚本操作

Redis 集群 & Redis 事务 & Redis 流水线 & Redis 发布订阅 Redis 集群linux安装redis主从配置查看当前实例主从信息 Redis Sentinelsentinel Redis Cluster Redis 事务Redis 流水线Redis 发布订阅Redis Lua脚本操作 Redis 集群 linux安装redis 下载安装包&#…...

【算法与数据结构】--常见数据结构--栈和队列

一、栈 栈&#xff08;Stack&#xff09; 是一种基本的数据结构&#xff0c;具有后进先出&#xff08;LIFO&#xff09;的特性&#xff0c;类似于现实生活中的一叠盘子。栈用于存储一组元素&#xff0c;但只允许在栈顶进行插入&#xff08;入栈&#xff09;和删除&#xff08;…...

Linux shell编程学习笔记11:关系运算

Linux Shell 脚本编程和其他编程语言一样&#xff0c;支持算数、关系、布尔、字符串、文件测试等多种运算。前面几节我们研究了 Linux shell编程 中的 字符串运算 和 算术运算&#xff0c;今天我们来研究 Linux shell编程中的的关系运算。 一、关系运算符功能说明 运算符说明…...

JS标准库

学习一门编程语言不仅是掌握其语法。同等重要的是学习其标准库&#xff0c;从而熟练掌握语言本身提供的所有工具。 1 定型数组 js常规数组与C和Java等较低级语言的数组类型还是有很大区别。ES6新增了定型数组&#xff0c;与这些语言的低级数组非常接近。 定型数组严格来说并…...

Android 12.0 hal层添加自定义hal模块功能实现

1. 前言 在12.0的系统rom定制化开发中,在 对hal模块进行开发时,需要通过添加自定义的hal模块来实现某些功能时,就需要添加hal模块的相关功能,接下来就来实现一个案例来供参考 接下来就来具体实现这个功能 2.hal层添加自定义hal模块功能实现的核心类 hardware\interfaces…...

如何理解vue声明式渲染

Vue.js中的声明式渲染是一种用来描述用户界面的方式&#xff0c;它强调“声明”应该如何渲染页面&#xff0c;而不需要关心底层的DOM操作。这与传统的命令式渲染方式&#xff0c;即手动控制DOM元素的创建、更新和销毁&#xff0c;形成了鲜明的对比。 理解Vue的声明式渲染的关键…...

【已解决】Vue全局引入scss 个别页面不生效 / 不自动引入全局样式

项目里配置了全局样式的引入&#xff0c;今天新建了 demo 页面去修改 element 的样式&#xff0c;发现全局的样式没有引入进来。 问题原因 在此页面 没有任何样式导致的 项目在编译的时候&#xff0c;会把 .vue 文件的样式抽离到单独的 css 文件中。 当该页面没有css代码的时…...

MySQL之双主双从读写分离

一个主机 Master1 用于处理所有写请求&#xff0c;它的从机 Slave1 和另一台主机 Master2 还有它的从 机 Slave2 负责所有读请求。当 Master1 主机宕机后&#xff0c; Master2 主机负责写请求&#xff0c; Master1 、 Master2 互为备机。架构图如下 : 准备 我们…...

使用eBPF加速阿里云服务网格ASM

背景 随着云原生应用架构的快速发展&#xff0c;微服务架构已经成为了构建现代应用的主要方式之一。而在微服务架构中&#xff0c;服务间的通信变得至关重要。为了实现弹性和可伸缩性&#xff0c;许多组织开始采用服务网格技术来管理服务之间的通信。 Istio作为目前最受欢迎的…...

大型数据集处理之道:深入了解Hadoop及MapReduce原理

在大数据时代&#xff0c;处理海量数据是一项巨大挑战。而Hadoop作为一个开源的分布式计算框架&#xff0c;以其强大的处理能力和可靠性而备受推崇。本文将介绍Hadoop及MapReduce原理&#xff0c;帮助您全面了解大型数据集处理的核心技术。 Hadoop简介 Hadoop是一个基于Google…...

EdgeRemover:Windows Edge浏览器彻底卸载的智能方案 - 释放系统资源新方法

EdgeRemover&#xff1a;Windows Edge浏览器彻底卸载的智能方案 - 释放系统资源新方法 【免费下载链接】EdgeRemover PowerShell script to remove Microsoft Edge in a non-forceful manner. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemover 核心价值定位 用…...

Display Driver Uninstaller:显卡驱动残留问题的技术深度解析与系统级清理方案

Display Driver Uninstaller&#xff1a;显卡驱动残留问题的技术深度解析与系统级清理方案 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/displ…...

收藏!小白程序员必备:从零入门大模型,抢占职场新风口(含学习资源包)

收藏&#xff01;小白程序员必备&#xff1a;从零入门大模型&#xff0c;抢占职场新风口&#xff08;含学习资源包&#xff09; CB Insights报告显示&#xff0c;AI智能体市场正爆发式增长&#xff0c;2024年融资达38亿美元。市场分为基础设施、通用应用和垂直应用三大板块&…...

LumiPixel Canvas Quest批量处理教程:使用Python脚本自动化生成人像图库

LumiPixel Canvas Quest批量处理教程&#xff1a;使用Python脚本自动化生成人像图库 1. 引言 最近遇到一个实际需求&#xff1a;需要为电商项目快速生成5000张不同风格的人像图片。手动一张张生成显然不现实&#xff0c;于是研究出了这套基于Python的自动化方案。用下来效果不…...

游戏开发实战:如何用Bezier曲线打造流畅的3D角色动画路径(Unity/C#示例)

游戏开发实战&#xff1a;如何用Bezier曲线打造流畅的3D角色动画路径&#xff08;Unity/C#示例&#xff09; 在3D游戏开发中&#xff0c;角色移动轨迹的自然度直接影响玩家体验。传统直线移动或简单弧线往往显得生硬&#xff0c;而Bezier曲线凭借其平滑过渡和灵活控制的特性&am…...

英飞凌IPOSIM在线仿真平台保姆级入门:从注册到生成第一份功率损耗报告

英飞凌IPOSIM在线仿真平台零基础实战指南&#xff1a;三步完成功率模块热评估 在电力电子设计领域&#xff0c;精确的功率损耗计算往往决定着系统可靠性。我曾见过一个光伏逆变器项目因热设计失误导致批量返修&#xff0c;仅仅因为工程师低估了IGBT模块在高温环境下的导通损耗。…...

Phi-4-reasoning-vision-15B多场景落地:已验证的12个企业级视觉理解SOP模板

Phi-4-reasoning-vision-15B多场景落地&#xff1a;已验证的12个企业级视觉理解SOP模板 你是不是也遇到过这样的场景&#xff1f;面对一堆产品图片&#xff0c;需要手动整理描述信息&#xff1b;收到一份复杂的图表报告&#xff0c;要花半天时间分析数据&#xff1b;或者&…...

Kook Zimage真实幻想Turbo快速调试:找到属于你的幻想风格黄金参数组合

Kook Zimage真实幻想Turbo快速调试&#xff1a;找到属于你的幻想风格黄金参数组合 1. 认识Kook Zimage真实幻想Turbo Kook Zimage真实幻想Turbo是一款专为个人GPU设计的轻量化幻想风格图像生成系统。它基于Z-Image-Turbo极速文生图底座&#xff0c;通过独特的权重融合技术&am…...

【大模型调优】彻底洗掉论文“机器味”:DeepSeek/Kimi/豆包专属降AI指令与保姆级工作流

很多时候大学生写论文逻辑太严谨、话术太规范&#xff0c;反而会导致AI率过高&#xff0c;且一旦AI率过高&#xff0c;轻则退回重改&#xff0c;重则取消答辩资格&#xff0c;这后果谁都担不起。 为了帮大家有效降低aigc率&#xff0c;这周我专门针对目前市面上最主流的三款大…...

深入解析串口通信:从RS232到RS485的工业应用实战

1. 串口通信的工业应用基础 第一次接触工业自动化项目时&#xff0c;我被现场密密麻麻的线缆搞得头晕眼花。直到老师傅指着角落里不起眼的两根双绞线说&#xff1a;"这条RS485总线控制着整条生产线的30台设备"&#xff0c;我才意识到串口通信在工业领域的强大之处。 …...