linux命令:常见的系统故障排除

简介:

Linux系统常见故障排除:

   1、确定问题的故障特征

   2、重现故障现象

   3、使用工具收集进一步信息

   4、排除不可能的原因

   5、定位故障:

        从简单的问题入手,一次尝试一种方式


可能出现的故障:

   1、管理员密码忘记:

      系统重新启动后,按方向键上下,定格在该界面中:

      wKiom1hjDlCSHVzyAAE7m5u4VfU131.jpg-wh_50

       按下e进入编辑,然后选择选择kernel内核那栏

     wKiom1hjD2iiZ9C-AAE-zQW7B9E140.jpg-wh_50

      再按下e进行编辑,在quiet后输入1表示进入单用户维护模式;

     wKioL1hjEEyyGdJAAAEfF_WL1tI211.jpg-wh_50

     输入1后,按确认键,再按b键,系统启动到单用户模式,进入单用户模式后

     直接修改管理员密码即可。

    

   2、系统无法正常启动

       a. grub损坏(MBR损坏,grub配置文件丢失)

       b. 系统初始化故障(某文件系统无法正常挂载,驱动不兼容)

       c. 服务故障

       d. 用户无法登陆系统(bash程序故障)

   3、命令无法运行

   4、编译过程无法继续(开发环境缺少基本组件)

   

找到问题原因后:

   1、备份原文件

   2、尽可能借助于工具


   

Linux故障模拟(以下模拟故障的系统均为redhat5.4)

  1、MBR损坏

    1.1.借助宿主机:(redhat5.4)

    1.2.使用紧急救援模式:系统安装光盘

      boot:linux rescue

        /mnt/sysimage

      手动创建设备文件:mknod


模拟MBR损坏

[root@jacktest ~]# fdisk -l
Disk /dev/sda: 113.8 GB, 113816633344 bytes
255 heads, 63 sectors/track, 13837 cylinders
...
[root@jacktest ~]# dd if=/dev/sda of=/root/mbr.backup count=1 bs=512  #试验前先备份
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.00372704 seconds, 137 kB/s
[root@jacktest ~]# ll /root/mbr.backup 
-rw-r--r-- 1 root root 512 Dec  9 08:27 /root/mbr.backup
[root@jacktest ~]# dd if=/dev/zero of=/dev/sda count=1 bs=300   #清除硬盘前300b 
1+0 records in
1+0 records out
300 bytes (300 B) copied, 6.3003e-05 seconds, 4.8 MB/s
[root@jacktest ~]# 


解决办法如下: 启动安装光盘

wKioL1hKBYKzJ9wpAAFWwDxD9js543.png-wh_50

光盘启动后输入:linux rescue

wKiom1hKBsbQ1NOWAACbi7dKGy8935.png-wh_50

wKiom1hKBkHjddomAAAoa-49iYc349.png-wh_50

wKioL1hKBkLjopn-AABZqaEiBcU138.png-wh_50

wKiom1hKB5zSRugZAABheVNEWXA810.png-wh_50

wKiom1hKB8azfbXSAACvtGVpwzQ516.png-wh_50

wKioL1hKCBjAO00aAAD_eqvoMYE352.png-wh_50

wKiom1hKCFiwnG6rAAE8hrzuNFM440.png-wh_50

wKiom1hKCJWwhA5yAACw8mWb-R8685.png-wh_50

wKiom1hKCPzRYfYiAAA-mgolzqE446.png-wh_50

wKioL1hKCl2CEvclAAFCdKXAtrs046.png-wh_50


  2、模拟grub损坏或文件丢失

[root@jacktest ~]# mv /boot/grub/grub.conf  /root/   #清除grub文件 
[root@jacktest ~]# sync

开机后出现如下:

wKiom1hKC7-DOQWNAABiz_-_HBQ369.png-wh_50

解决办法如下:

grub> root (hd0,0)

grub> kernel /vmlinuz-  ro root=/dev/hd2  # 安装系统时的路径为/dev/hd2 如果不是该路径的话,

                              需要一个个测试结果。

grub> initrd /initrd-

wKiom1hKIxaS6khdAAF3Vsd-FNc554.png-wh_50


  3、kernel panic:内核恐慌

    3.1. 默认级别设定为0或6:进入单用户模式,修改inittab文件

    3.2. /etc/rc.d/rc3.d中无启动文件:进入单用户模式,新建相关文件

    3.3. sendmail : 配制文件时间戳检查无法通过:

     3.3.1.   进单用户模式关闭其服务;

     3.3.2.   进单用户模式修复时间戳;

     3.3.3.   启动时按 " i " 键进入交互模式,手动逐个指定所有服务是否启动;

wKiom1hKJe-RYgQIAAFDaY4k-JI073.png-wh_50


  4、/etc/rc.local中的文件语法错误或逻辑错误:进单用户模式修改文件


  5、PATH变量错误:先不退出界面备份/etc下的文件

export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin


  6、mingetty文件丢失:进入单用户模式,网络或光盘方式重新安装

    bash丢失:将/bin/bash改名模拟丢失

wKioL1hKMrWDri0FAAE-fSiEcAo681.png-wh_50

上图中无法关机,下图中开机失败;

wKiom1hKMrrw9lcbAAGHhxz7zEo298.png-wh_50


解决方法:

光盘启动进入紧急救助模式,使用光盘中的安装文件重新安装bash

6.1. 无网络:挂载光盘

wKioL1hKRLXhSA7zAAImda18q6g811.png-wh_50

以上截图详细解释:

首先通过光盘进入救援模式,然后挂载光盘进行安装bash包:

 1、先从光盘引导,输入linux rescue

wKioL1hjWr7A1pgPAAQA-EoQXrI909.jpg-wh_50

sh-3.2# ls /dev     查看光驱设备符为hdc

sh-3.2# mkdir /media   

sh-3.2#mount /dev/hdc /media   挂载光驱到/media目录

sh-3.2#cd /media/Server     进入光驱rpm文件夹

sh-3.2#rpm -ivh --replacepkgs --root /mnt/sysimage bash-3.2-32.e15.i386.rpm 安装bash到系统根目录下

                        /mnt/sysimage 是光盘引导后系统所在的根目录分区

sh-3.2# reboot  然后重启即可


6.2. 有网络:通过网络复制bash安装文件

wKiom1hKRzrzUub4AADrZHnBm9g883.png-wh_50















本文转自wang650108151CTO博客,原文链接: http://blog.51cto.com/woyaoxuelinux/1886938,如需转载请自行联系原作者


相关文章
|
2月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
381 1
二、Linux文本处理与文件操作核心命令
|
2月前
|
Ubuntu Linux Anolis
Linux系统禁用swap
本文介绍了在新版本Linux系统(如Ubuntu 20.04+、CentOS Stream、openEuler等)中禁用swap的两种方法。传统通过注释/etc/fstab中swap行的方式已失效,现需使用systemd管理swap.target服务或在/etc/fstab中添加noauto参数实现禁用。方法1通过屏蔽swap.target适用于新版系统,方法2通过修改fstab挂载选项更通用,兼容所有系统。
205 3
Linux系统禁用swap
|
2月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
275 3
|
2月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
282 137
|
2月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
639 57
|
1月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
335 2
|
Ubuntu Linux 网络安全
Linux系统初始化脚本
一款支持Rocky、CentOS、Ubuntu、Debian、openEuler等主流Linux发行版的系统初始化Shell脚本,涵盖网络配置、主机名设置、镜像源更换、安全加固等多项功能,适配单/双网卡环境,支持UEFI引导,提供多版本下载与持续更新。
266 0
Linux系统初始化脚本
|
2月前
|
缓存 监控 Linux
Linux内存问题排查命令详解
Linux服务器卡顿?可能是内存问题。掌握free、vmstat、sar三大命令,快速排查内存使用情况。free查看实时内存,vmstat诊断系统整体性能瓶颈,sar实现长期监控,三者结合,高效定位并解决内存问题。
214 0
Linux内存问题排查命令详解
|
2月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
232 16
|
3月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
212 18