文档章节

Linux常见系统故障

最新更新消息
 最新更新消息
发布于 2015/07/18 22:11
字数 830
阅读 28
收藏 0

常见系统故障的排除:
1 确定问题的故障特征
2 重现故障
3 使用工具收集进一步信息确定故障根源
4 排除不可能的原因
5 定位故障:
从简单问题入手
一次只尝试一种方式

遵循的基本原则:备份原文件
尽可能借助于工具

可能出现的故障:
1 管理员密码忘记
2 系统无法正常启动
grub 损坏(MBR损坏,grub配置文件丢失)
系统初始化故障(某文件系统无法正常挂载,驱动问题等)
由rc.sysinit导致 只要进入grub编辑模式 emergency 不会加载rc.sysinit脚本
某些服务故障
用户无法登陆(用户对应的shell损坏,mingetty)
3 命令无法运行
4 编译过程无法继续(开发环境缺少基本组件)

例子: 将MBR损坏.
先将MBR 备份  dd if=/dev/sda of=/root/mbr.backup count=1 bs=512
损坏:dd if=/dev/sda/zero 0f=/dev/sda count=1 bs=200
sync
shutdown -r now

MBR损坏解决办法:
1 借助于别的主机修复
2 使用紧急救援模式
a、boot.iso  只提供引导界面     所以同时要提供安装环境才行
b、使用完整的系统安装盘 (完好的系统光盘)
输入命令boot:linux rescue
根文件系统会被挂载到/mnt/sysimage下 可能以只读方式挂载 要重新挂载改为读写方式

因为引用的文件系统没有rc.syinit 而rc.sysinit有udevs用来创建设备文件 所以要手动创建设备文件 mknod

成功进入紧急模式后  使用grub 命令
findhd(0,0)/   再tab补全    若发现vimlinuz 和initrd文件 表示在该盘
root hd(0,0)
setup hd(0)
exit
sync
reboot

grub配置文件丢失:
grub> root (hd0,0)
grub> kernel /vmlinuz-version ro root=/dev/vo10/root/ rhgb quiet
grub> initrd /initrd-version   一定要与内核版本匹配
gurb>boot
手动建立grub.conf
default=0
timeout=10
title RHEL 5.8
root (hd0,0)
kernel /vmlinuz-version ro root=/dev/vo10/root quiet
initrd /

先将/boot/grub 移走 mv /boot/grub/grub.conf /root/
sync
shutdown -r now

kernel panic:内核恐慌

其他故障:
把默认级别设定为0或6 -->进入单用户模式,编辑inittab文件

删了/etc/rc.d/rc3.d,运行到3级别时就会报错.   -->进入单用户模式修复

某个服务故障导致无法启动 -->启动系统时敲I键,启动交互式模式,选择不启动sendmail服务即可

rc.d/rc.local脚本出现语法错误或者逻辑错误 -->进入单用户模式,单用户模式不启动
rc.local开机必启动,常用来在里面添加一些脚本,让开机后执行

/bin/bash被删除了-->进入紧急救援模式(挂载光盘)-->输入命令boot:linux rescue
-->ls /mnt/sysimg  真正的根在该目录下
-->ls /dev 发现有个hdc
-->mkdir /media   不能直接挂载到/mnt下 因为/mnt/sysimg
-->mout /dev/hdc /media   没有cdrom hdc就像当于cdrom
--> cd /media
-->ls
-->cd /server
-->ls | grep bash
-->rpm -ivh --replacepkgs bash-version  这个是装在当前的小系统了 不行
-->rpm -ivh --replacepkgs --root /mnt/sysimg bash-version  指定
chroot /mnt/sysimg

mingetty被删除了-->进入单用户模式 单用户模式不用mingetty,但也不启动网络功能,要手动开启网络功能,从服务器下载mingetty

© 著作权归作者所有

共有 人打赏支持
最新更新消息
粉丝 1
博文 39
码字总数 49637
作品 0
崇明
私信 提问
招聘驻北加拿大Linux运维工程师

招聘驻北加拿大Linux运维工程师 必须有高并发、高流量维护经验的 岗位职责: 1. Linux业务服务器的配置,维护,监控,调优,故障排除等 2. 大用户量下高性能服务器系统部署方案的制定及实施 ...

于一一
2012/11/16
1K
12
北京中关村互联网新锐急聘项目leader,php高级开发及运维人员

公司简介: 殊胜科技有限公司(http://www.vchina.com)是一家专门从事电子商务及网络信息服务的技术与营 销相结合的科技公司。其兄弟公司“殊胜广告”最早从事于为企业提供网络营销,活动策...

tiyuchina
2010/06/02
592
6
Linux系统故障分析与排查,与解决

Linux系统故障分析与排查 在处理Linux系统出现的各种故障时,故障的症状是最先发现的,而导致这以故障的原因才是最终排除故障的关键。熟悉Linux系统的日志管理,了解常见故障的分析与解决办法...

cunlifang
2018/06/26
0
0
求职-------IDC运维工程师

个人简历 基本信息: 姓名: 宋文强 籍贯:山东菏泽 性别: 男 民族:汉 手机:13371761117 邮箱:wenqianggogo@163.com 出生日期:1989年5月27日 学历:大专 教育背景: 2006.09-2009.07 毕业...

宋文强1
2012/02/17
2.1K
2
linux 系统 chmod 误操作权限异常修复方式

Linux 系统中如果意外误操作将根目录或系统默认关键目录权限批量设置,比如 chmod -R 777 / ,系统中的大部分服务以及命令将无法使用,这时候可以通过系统自带的 getfacl 和 setfacl 命令来拷...

Bill_Xing
2018/07/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

第11章 多线程

程序、进程、线程 程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。 **进程(process)**是程序的一次执行过程或是正在运行的一个程序。动...

流小文
26分钟前
3
0
SpringBoot引入第三方jar包或本地jar包的处理方式

在开发过程中有时会用到maven仓库里没有的jar包或者本地的jar包,这时没办法通过pom直接引入,那么该怎么解决呢 一般有两种方法 - 第一种是将本地jar包安装在本地maven库 - 第二种是将本地j...

独钓渔
今天
2
0
五、MyBatis缓存

一、MyBatis缓存介绍 缓存的使用可以明显的加快访问数据速度,提升程序处理性能,生活和工作中,使用缓存的地方很多。在开发过程中,从前端-->后端-->数据库等都涉及到缓存。MyBatis作为数据...

yangjianzhou
今天
2
0
最近研究如何加速UI界面开发,有点感觉了

最近在开发JFinal学院的JBolt开发平台,后端没啥说的,做各种极简使用的封装,开发者上手直接使用。 JBolt开发平台包含常用的用户、角色、权限、字典、全局配置、缓存、增删改查完整模块、电...

山东-小木
今天
3
0
《月亮与六便士》的读后感作文3000字

《月亮与六便士》的读后感作文3000字: 看完英国作家威廉.萨默塞特.毛姆所著《月亮与六便士》(李继宏译),第一疑问就是全书即没提到“月亮”,也没提到“六便士”。那这书名又与内容有什么...

原创小博客
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部