歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux常見系統故障排除

Linux常見系統故障排除

日期:2017/2/28 13:59:56   编辑:Linux教程

Linux常見系統故障的排除:
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

Copyright © Linux教程網 All Rights Reserved