系统启动-——故障排查

实验目标:

分别删除/boot下的initramfs-2.6.32-358.el6.x86_64.img和vmlinuz-2.6.32-358.el6.x86_64文件
然后挂载光盘,进入救援模式进行故障恢复。

实验前先查看/boot 下initramfs-2.6.32-358.el6.x86_64.img 文件属性和内容:

方法一:
===================================================================================================================
[[email protected] boot]#cp initramfs-2.6.32-358.el6.x86_64.img /data/    //为了查看,先把此文件拷贝到/data目录下

[[email protected] data]#file initramfs-2.6.32-358.el6.x86_64.img         //查看文件类型
initramfs-2.6.32-358.el6.x86_64.img: gzip compressed data, from Unix, last modified: Fri Mar  7 06:01:26 2014, max compression 

[[email protected] data]#gunzip initramfs-2.6.32-358.el6.x86_64.img       //直接解压报错
gzip: initramfs-2.6.32-358.el6.x86_64.img: unknown suffix -- ignored

[[email protected] data]#mv initramfs-2.6.32-358.el6.x86_64.img initramfs-2.6.32-358.el6.x86_64.img.gz  //文件改名为.gz后缀
[[email protected] data]#ls
initramfs-2.6.32-358.el6.x86_64.img.gz   

[[email protected] data]#gzip -d initramfs-2.6.32-358.el6.x86_64.img.gz   //然后解压

[[email protected] data]#ll /boot/initramfs-2.6.32-358.el6.x86_64.img initramfs-2.6.32-358.el6.x86_64.img   //对比原文件和解压后的文件
-rw-r--r--. 1 root root 16583044 Mar  7  2014 /boot/initramfs-2.6.32-358.el6.x86_64.img   //原文件
-rw-r--r--  1 root root 46944256 Jan 15 09:39 initramfs-2.6.32-358.el6.x86_64.img          //解压后

[[email protected] data]#file initramfs-2.6.32-358.el6.x86_64.img   //再次查看文件类型为cpio格式文件
initramfs-2.6.32-358.el6.x86_64.img: ASCII cpio archive (SVR4 with no CRC)

[[email protected] data]#cpio -id <initramfs-2.6.32-358.el6.x86_64.img   //文件解压成功
91688 blocks
[[email protected] data]#ls   //查看发现这是一个最小化的Linux运行环境
bin                 emergency  initqueue-finished                   lib        pre-trigger  sys      var
cmdline             etc        initqueue-settled                    lib64      pre-udev     sysroot
dev                 init       initqueue-timeout                    mount      proc         tmp
dracut-004-303.el6  initqueue  initramfs-2.6.32-358.el6.x86_64.img  pre-pivot  sbin         usr

方法二:
==============================================================================================================
[[email protected] test]#zcat initramfs-2.6.32-754.el6.x86_64.img |cpio -id //查看后,管道给cpio解压
141150 blocks
[[email protected] test]#ls
bin emergency initqueue-finished lib pre-mount proc tmp
cmdline etc initqueue-settled lib64 pre-pivot sbin usr
dev init initqueue-timeout mount pre-trigger sys var
dracut-004-411.el6 initqueue initramfs-2.6.32-754.el6.x86_64.img netroot pre-udev sysroot

===============================================================================================================

故障救援

1、删除initramfs-2.6.32-358.el6.x86_64.img,然后再恢复

[[email protected] boot]#rm -rf initramfs-2.6.32-358.el6.x86_64.img  //删除文件

[[email protected] boot]#reboot  //重启,发现系统起不来

F:\ISO系统文件\rhel-server-6.4-x86_64-dvd.iso   //救援之前第一步先挂载挂载光盘

连接光盘-->重置---> 鼠标点进虚拟机 --> 按一下ESC键

sh-4.1# chroot /mnt/sysimage/    //切根
sh-4.1# mkinitrd /boot/initramfs-`uname -r`.img `uname -r`  //为当前正在使用的内核重新制作ramdisk文件
sh-4.1# ll /boot
total 22866
-rw-r--r--. 1 root root   104081 Jan 30  2013 config-2.6.32-358.el6.x86_64
drwxr-xr-x. 3 root root     1024 Mar  7  2014 efi
drwxr-xr-x. 2 root root     1024 Mar  7  2014 grub
-rw-r--r--. 1 root root 16647561 Jan 15 11:11 initramfs-2.6.32-358.el6.x86_64.img  //删除的文件已经恢复
drwx------. 2 root root    12288 Mar  7  2014 lost+found
-rw-r--r--. 1 root root   185734 Jan 30  2013 symvers-2.6.32-358.el6.x86_64.gz
-rw-r--r--. 1 root root  2407466 Jan 30  2013 System.map-2.6.32-358.el6.x86_64
-rwxr-xr-x. 1 root root  4044560 Jan 30  2013 vmlinuz-2.6.32-358.el6.x86_64

重启电脑,成功进入系统。

2、 删除vmlinuz-2.6.32-358.el6.x86_64, 然后再恢复

[[email protected] boot]#reboot //重启后报错

 Error 15: File not found

 Press any key to continue. . . 

F:\ISO系统文件\rhel-server-6.4-x86_64-dvd.iso   //救援之前第一步先挂载挂载光盘

连接光盘-->重置---> 鼠标点进虚拟机 --> 按一下ESC键

sh-4.1# chroot /mnt/sysimage/    //切根
sh-4.1# mount /dev/cdrom  /mnt   //挂光盘
sh-4.1# cd /mnt/isolinux/
sh-4.1# cp vmlinuz /boot/vmlinuz-`uname -r`   //恢复删除的Linux内核文件到/boot/

重启电脑,成功进入系统。

原文地址:http://blog.51cto.com/8845692/2342829

时间: 2024-08-10 17:02:02

系统启动-——故障排查的相关文章

Linux 系统启动故障排查和修复

我发现Linux系统在启动过程中会出现一些故障,导致系统无法正常启动,我在这里写了几个应用单用户模式.GRUB命令操作.Linux救援模式的故障修复案例帮助大家了解此类问题的解决. (一)单用户模式 Linux系统提供了单用户模式(类似Windows安全模式),可以在最小环境中进行系统维护.在单用户模式(运行级别1)中,Linux引导进入根shell,网络被禁用,只有少数进程运行.单用户模式可以用来修改文件系统损坏.还原配置文件.移动用户数据等. 以下列举了几个单用户模式修复系统故障的典型案例:

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为很多应用要解析到本地.oracle没有这个解析可能启动不了. 2.注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响. 3.磁盘满了无法启动,  var下木有空间,无法创创建PID等文件,导致文件无法启动,按e   进入single  然后b  重启进入单用户模式. 4.ssh登陆系

[linux]df 磁盘100%Used告警,du显示目录状态良好的故障排查

1.回顾: 某在线主机深夜连续接到告警系统的disk Used 超限告警. 登陆主机查看却遇到了困惑:在检查磁盘使用量 df –h 出来的磁盘使用量确实和告警信息一样,已经被100%占用,但是查看目录大小 du 时,却显示实际目录大小并非这样,而是有很大空闲空间. 如图:磁盘用量 df –h 结果为100%Used, 目录实际总大小 du –h –max-depth=1,显示总目录大小为60k,几乎可以忽略的使用比例. [知识准备] [linux] lsof 命令了解: lsof(list op

Atitit.&#160;包厢记时系统&#160;的说明,教程,维护,故障排查手册v2&#160;pb25.doc

Atitit. 包厢记时系统 的说明,教程,维护,故障排查手册v2 pb25.doc 1. 服务器方面的维护1 1.1. 默认情况下,已经在系统的启动目录下增加了 个启动项目1 1.2. 后台服务.保持mysql数据库服务启动状态2 1.3. 服务器如无必要无需关闭,保持一直开启状态...2 1.4. 配置文件说明3 1.4.1. 指明选片服务端url3 1.4.2. 包厢计时系统提供的接口url (部分分店需要)3 1.4.3. 其他设置3 2. 故障排查4 3. 包厢记时系统5 3.1. 维

Rsync 12种故障排查及思路

Rsync 故障排查整理 Rsync服务常见问题汇总讲解: ============================================================================================== 1 客户端的错误现象:No route to host rsync服务端开启的iptables防火墙 [[email protected] tmp]# rsync -avz /etc/hosts [email protected]::backup r

公司突然断网故障排查

记一次公司断网故障排查 本来大周一挺好的,刚坐在工位上不到半个小时,公司突然断网,此时,我是有点凌乱的! 下边是排查故障的过程 1,首先我看下本机电脑的IP地址,禁用启动,发现仍旧可以获取到IP地址,这代表DHCP分发是没问题的,因为是突然断网,代表着交换机路由器配置不可能出问题 2,接着我带着笔记本进入机房,看了下光猫,光猫状态正常,然后看了下路由器,路由器是H3C的,有web管理界面,进入web管理界面,发现IP地址状态也是正常的. 4,接着给公司网络运营商打电话,他说是他们那边的问题,有个

虚拟机性能监控与故障排查工具介绍

本文来读书籍<深入理解java虚拟机-JVM高级特性与最佳实践>的阅读笔记,并且对虚拟机性能监控与故障排查一节做了内容整理. 关于导图中的两部分内容还是希望大家能够亲自测试体验下,在网上也有不少的文章介绍,这里摘录几篇个人认为不错的文章,供参考: jstat/jinfo/jstack/jmap命令行工具使用详细介绍 VisualVM 官网介绍及使用说明 使用 VisualVM 进行性能分析及调优 使用VisualVm监控远程Linux服务器java进程 由于在 linux 服务器上面,使用远程

Kubernetes之kubectl常用命令使用指南:2:故障排查

kubectl是一个用于操作kubernetes集群的命令行接口,通过利用kubectl的各种命令可以实现各种功能,是在使用kubernetes中非常常用的工具.这里我们会通过一些简单的实例来展现其中一些高频命令的使用方法. 更为重要的是这些命令使用的场景以及能够解决什么样的问题.上篇文章我们介绍了创建和删除相关的几条命令,这篇文章我们来看一下出现问题时最常用的另外九条命令. 常用命令 kubectl故障排查相关,本文将会简单介绍一下如下命令 项番 命令 说明 No.1 version 显示客户

4核服务器cpu使用率10%负载飙到23.5故障排查

遇到一个故障,一台4核服务器cpu利用率是10%负载却飙到23,先看下问题现场,截图如下:...... 浏览全部请点击运维网咖社地址:4核服务器cpu使用率10%负载飙到23.5故障排查