LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 5167|回复: 5

恢复Turbo Linux下的硬盘数据

[复制链接]
发表于 2006-10-22 21:25:29 | 显示全部楼层 |阅读模式
摘要:
    本文旨在通过一个具体的事例来说明,由于某些原因(如非正常关机)导致系统无法启动且无法用救援模式(rescue)来修复的情况下,如何运用fdisk工具来挽救硬盘上的有用数据。由于本人认识有限,文档中难免有描述不清甚至错误的地方,欢迎指正:hudsying@gmail.com
   
平台描述:
    硬件平台:IBM Xseries 336
          单cpu xeon 2.6G
          内存1024M
          scsi硬盘73.4G
          DVD驱动器
    操作系统:Great Turbo Enterprise Server 10
          内核:2.6.9
    硬盘分区情况:
          设备        大小      mount point     类型
          /dev/sda1   120M      /boot           EXT3
          /dev/sda2   20000M    /               EXT3
          /dev/sda3   2048M                     SWAP
          /dev/sda4   49000M                    EXTENED
            /dev/sda5 49000M    /u              EXT3
            
故障描述:
    由于未知原因,导致机器死机。无法ping通主机,终端无反应,无法输入任何指令。CTRL+ALT+F1~F7也不起作用。只好冷关机。开机自检后,进入操作系统选择界面,确定进入。在操作系统检查磁盘后提示,系统异常关机,需要检查文件系统。确认后fsck,并修复(切记,fsck相当危险,慎用)。最终进入操作系统,但系统有些异常。于是再次重启。当进入操作系统文件系统检测时,便无法继续。最终屏显为:switch to new root
   
修复过程:
    用IBM XSeries 336自带的硬盘检测工具扫描硬盘,并未发现硬件上有任何故障。
    试图用操作系统的rescue模式恢复系统,但进行至:搜索已安装的操作系统时死机。
    将硬盘插入另一台正常的336机器,试图mount。但系统启动异常(很多模块加载失败),且mount失败(可能是因为操作系统检测到硬件有较大改动的缘故)。
    由于用户数据在单独的一个分区(/u,dev/sda5),所以试着重装操作系统并保留分区/u不格式化。但同样当进行到:搜索已安装的操作系统这一步时死机。
   
    咨询turbo linux工程师,对方告知可以在死机之前,ALT+F2进入控制台,再用fdisk删除用户数据以外的其他分区:
    准备:
    1.  插入Server 10安装盘重启系统
    2.  在安装提示下输入text,进入文本安装模式
    3.  安装程序初始化完毕后,选择语言,键盘等。直道导致死机的搜索已安装的操作系统那一步之前
    4.  ALT+F2进入控制台
    5.  dmesg|grep scsi查看scsi硬盘信息,发现并无报错。再次验证硬盘无硬件故障
    fdisk:
    1.  fdisk /dev/sda
        屏幕提示:Command (m for help):
        这时候如果键入m可以查看帮助
    2.  键入p查看分区情况:
        /dev/sda1   120M      /boot           EXT3
        /dev/sda2   20000M    /               EXT3
        /dev/sda3   2048M                     SWAP
        /dev/sda4   49000M                    EXTENED
            /dev/sda5 49000M    /u              EXT3
        屏幕提示:Command (m for help):
    3.  键入d删除/boot分区
        屏幕提示:Command (m for help):
    4.  键入w确认删除并回到提示:
        Command (m for help):
    5.  键入p查看分区情况:
        这时发现少了一个分区。分区情况可能有所改变,我们需要记住新的分区情况
    6.  用第3和4步的方法依次删除除了用户数据区(/u)之外的其他分区
   
    退出控制台(大概是quit或者其他什么命令,记不清了)继续安装。当进入搜索已安装的操作系统时,并没有死机。于是按照正常步骤进行重新分区,并配置安装过程中的其他参数(记住一定保留/u分区)。系统安装完成后,便可通过mount挂载/u分区(mount -t ext3 /dev/sda5 /mnt),里面的数据都完好无损。
   
    修复过程到此结束!
   
   
要点总结:
    1.  尽量避免冷关机的情况
    2.  慎重使用fsck
    3.  Turbo Linux在引导过程中,可以通过ALT+F2进入控制台
    4.  在涉及到分区问题时,可以试试fdisk
    5.  有关fdisk的其它详细介绍,请参阅:
        http://www.linux8.net/html/xxjc/2005-10/26/18_49_47_617.html
        http://www.linuxmine.com/37388.html
        
    欢迎交流:hudsying@gmail.com
   
                                                                By DooB
                                                                Oct 22,2006
发表于 2006-10-24 18:50:29 | 显示全部楼层
好久没有设置过精华贴老

鼓励一下
回复 支持 反对

使用道具 举报

发表于 2006-11-9 16:13:39 | 显示全部楼层
看了开头我超级激动 以为ext3下数据恢复有了好办法
分区表错误还好弄一点
回复 支持 反对

使用道具 举报

发表于 2006-11-14 19:02:57 | 显示全部楼层
虽然不是俺想像中的那种删除数据的恢复,但LZ的办法却值得学习。下次俺也要把硬盘专门分个用户数据区,防患于未然!
回复 支持 反对

使用道具 举报

发表于 2007-2-27 22:11:57 | 显示全部楼层
虽然不是俺想像中的那种删除数据的恢复,但LZ的办法却值得学习。下次俺也要把硬盘专门分个用户数据区,防患于未然!
回复 支持 反对

使用道具 举报

发表于 2007-3-12 19:59:58 | 显示全部楼层
楼上的真bt啊。跟楼上的楼上学
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表