1.系统引导过程概述

2.系统异常及恢复

【1】grub系统引导

1)mbr上446字节丢失

模拟问题: dd if=/dev/zero? of=/dev/vda? bs=446? count=1?

开机提示错误信息

解决方法:

chroot /mnt/sysimaage ? ? ? ##切换到真实根环境

grub2-install /dev/vda ? ? ? ? ? ##安装硬盘?

具体实现方法如下:

1.打开虚拟机管理器,关闭虚拟机(force off)

2.加入镜像光盘,从光驱启动

3.在boot options中将IDE CDROM1设置为优先加载显示

4.重新开机,选择Troubleshooting

5.选择 Rescue a Red Hat Enterprise Linux system

重要的事情说三编:真实的系统挂载在/mnt/sysimage下

continue

ok

ok

6.切换到真实/环境,进行安装grub2磁盘引导

7.更改selinux状态为disabled

8.关闭虚拟机,在虚拟机管理器中将VirtlO Disk1再次设置为优先加载显示

9.再次打开虚拟机,系统成功引导

2)引导文件丢失

模拟问题:rm -rf
/boot/grub2/grub.cfg

1.当系统未重启

grub2-mkconfig >
/boot/grub2/grub.cfg ##grub2-mkconfig输出的就是/boot/grub2/grub.cfg的文件内容

2.当系统已经重启summary

grub> set root=’hd0,msdos1’?
##找boot分区的挂载点,第一块硬盘的第一个分区,此位置时不固定的,位置指定/boot所在分区

grub> linux16
/boot/vmlinuz-3.10.0-123.e17.x86_64 ro root=/dev/vda1
#内核文件只读挂载,根分区设备名称

grub> linitrd16
/boot/initramfs-3.10.0-123.e17.x86_64.img ##系统初始化镜像文件

grub>? boot

执行上述命令后,系统可正常启动,但是再次重启时又遇到相同的问题

此时需要grub2-mkconfig >
/boot/grub2/grub.cfg 生成引导文件

具体实现方法如下:

待开机后执行:

【2】内核文件丢失

模拟问题:rm -fr
/boot/vmlinuz-3.10.0-123.e17.x86_64 ##删除系统内核文件

Linux系统有7个运行级别(runlevel)
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
运行级别2:多用户状态(没有NFS)
运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
运行级别4:系统未使用,保留
运行级别5:X11控制台,登陆后进入图形GUI模式
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

设定启动级别

systemctl set-default + 启动级别

模拟问题:

systemctl set-default
shutdown.target

解决方法:

1.开机按上下键停止读秒
2.按‘E’进入编辑模式

3.选择内核启动行,linux16
/vmlinuz-xxxxxxxx ro xxxxxxxxx? 后添加启动级别5

具体实现方法:

1.错误提示界面

2.重新启动

ctrl+x执行

3.恢复正常

基于Linux的系统排错的更多相关文章

  1. Linux图像系统框架-理解X11与Qt的层次结构

    转:http://blog.csdn.net/kjfureone/article/details/52848550 1. 前言 图形子系统是linux系统中比较复杂的子系统之一:对下,它要管理形态各异 ...

  2. 基于busybox的Linux小系统制作 (initrd)

    我们有时候有需要在busybox基础上,制作linux,可是却不知道具体怎么做,这里将对基于busybox的linux小系统制作做出详细的步骤说明.准备环境:1.一个Redhat完整系统的虚拟机,本次 ...

  3. 基于Linux平台的Lotus Domino 8系统部署五部曲(全视频展示)

    基于Linux平台的Lotus Domino 8系统部署五部曲(全视频展示),学习就像看电影 第一部:安装部署 第二部:配置Domino 第三部:Notes8客户端配置 第四部:为Domino系统加装 ...

  4. 基于Linux系统的Nagios网络管理模块的实现

    基于Linux 系统的Nagios网络管理模块的实现 1.引言 随着计算机网络的普及,网络管理已成为信息时代中最重要的问题之一.在现有的技术条件下,人们希望有一个更加稳定可靠的网络环境.计算机网络管理 ...

  5. 基于Linux系统geth的安装

    转载地址 https://blog.csdn.net/qq_36124194/article/details/83658580 基于Linux系统geth的安装 安装ethereum sudo apt ...

  6. 基于Ubuntu14.04系统的nvidia tesla K40驱动和cuda 7.5安装笔记

    基于Ubuntu14.04系统的nvidia tesla K40驱动和cuda 7.5安装笔记 飞翔的蜘蛛人 注1:本人新手,文章中不准确的地方,欢迎批评指正 注2:知识储备应达到Linux入门级水平 ...

  7. 基于Linux平台的libpcap源码分析和优化

    目录 1..... libpcap简介... 1 2..... libpcap捕包过程... 2 2.1        数据包基本捕包流程... 2 2.2        libpcap捕包过程... ...

  8. Go 语言开发的基于 Linux 虚拟服务器的负载平衡平台 Seesaw

    负载均衡系统 Seesaw Seesaw是由我们网络可靠性工程师用 Go 语言开发的基于 Linux 虚拟服务器的负载平衡平台,就像所有好的项目一样,这个项目也是为了解决实际问题而产生的. Seesa ...

  9. 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化

    高性能Linux服务器 第10章    基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...

随机推荐

  1. odoo12学习之javascript-----2

    用例子:Creating a new field widget 这可能是一个非常常见的用例:我们希望以非常具体(可能依赖于业务)的方式在表单视图中显示一些信息. 例如,假设我们要根据某些业务条件更改文 ...

  2. 第七篇 -- 常用界面组件的使用(QSlider和QProgressBar)

    首先画个图 ui_proBar.py # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'ui_ ...

  3. Linux下获取当前程序的绝对路径

    在Linux开发应用时,我们常常需要在程序中获取当前程序绝对路径,我们可以通过readlink读取符号链接/proc/self/exe进行获取,这个符号链接代表当前程序,它的源路径就是当前程序的绝对路 ...

  4. 使用html2canvas.js将HTML生成图片

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. SQL排序包含数字、字母和中文处理

    --模拟数据 SELECT * INTO #temp FROM ( SELECT 1 AS id, 'C101' AS sort UNION ALL SELECT 2 AS id, 'B101' AS ...

  6. MySQL执行计划【explain】详解

    本文已经收录到github仓库,仓库用于分享Java相关知识总结,包括Java基础.MySQL.Springboot.mybatis.Redis.rabbitMQ等等,欢迎大家提pr和star! gi ...

  7. getRawX、getRawY与getX、getY、getScrollX、getScrollY,getTop,getLeft区别

    这篇文章写的不错,Mark一下 http://blog.csdn.net/sinat_29912455/article/details/51073537

  8. Sqli-labs 注入靶场(1-22)

    Sqli-labs靶场1-22 Sql注入的本质是代码和数据的未分离,导致用户的输入可以对数据库产生恶意的输入或输出. 本篇博客旨在通过Sqli-labs的第1-22关,详细的描述Sql注入的相关场景 ...

  9. Solidity

    起因是Xenc师傅给我截了张图,我日 居然看不懂 ,一搜才知道,之前学的版本有些老了.. 这次学下新一点的记录下 HelloWorld pragma solidity ^0.6.0; // versi ...

  10. Java知识复习回顾

    1.MVC 三层架构: M:Model 数据模型层 V:View 视图层 C:Controller控制器层 目的:解耦 2.Spring Spring:轻量级的Java开源框架,容器,目的是解决企业级 ...