轻松解决 Linux操作系统故障恢复技巧

所属分类: 操作系统 / unix linux 阅读数: 96
收藏 0 赞 0 分享
不论你在运行什么操作系统,在很多情况下,你会面对灾难恢复操作。你的主引导区被覆盖,你的硬盘不能启动,或者一个重要的文件被删除,或者你的显示卡启动时闪烁一下就黑屏了。本文会就这些问题作一些技巧性的讨论,帮助你在遇到这些问题时,不致于手足无措。

  首先需要的是一张应急启动软盘,在安装 Linux 时,一般会要求建立一张的,所以,你应该有这张磁盘的,如果还没有建立的话,赶紧去建立一张吧,什么?不知道怎么做?很简单的,一般的 Linux 系统下使用 mkbootdisk 命令就可以了。后面的那些参数,只要看看帮助,应该就明白了。

  首先使用

  # uname -a

  系统提示:

  Linux albertxu 2.2.16-2.0 #1 Sun May 20 16:53:41 EST 2001 i586 unknown

  来看看系统的内核版本。我们就知道系统的内核版本是 2.2.16-2.0。

  然后使用

  # mkbootdisk --device /dev/fd0 2.2.16-2.0

  系统提示:

  Insert a disk in /dev/fd0. Any information on the disk will be lost.
  Press to continue or ^C to abort:

  插入磁盘,等待一会,直到磁盘建立。这样,紧急启动软盘就这样建立了。

  除了采用以上的办法以外,另外一个办法就是使用 tomsrtbt来建立启动软盘。先介绍 这个程序的安装步骤:

  # gunzip tomsrtbt-1.7.218.tar.gz
  # tar -xvf tomsrtbt-1.7.218.tar
  # rm tomsrtbt-1.7.218.tar
  # cd tomsrtbt-1.7.218/
  # ./install.s

  按照屏幕的说明,这个软件采用高密度的压缩方法把多种 Linux 工具压缩到单张 1.7 Mb 的软盘上。

  缺省的磁盘包含下面的程序,驱动和内核:

  2.0.37 3c589_cs BusLogic DEC_ELCP EEXPRESS EEXPRESS_PRO EL2 EL3 EXT2 FAT FAT32 FD IDE IDECD IDEFLOPPY IDEPCMCIA IDETAPE ISO9660 JOLIET LOOP MATH_EMULATION MINIX MSDOS NE2000 NFS PROC RAM SD SERIAL SLIP SMC SR ST TR ULTRA VFAT VORTEX WD80x3 ah152x_cs aha152x aha1542 aic7xxx ash awk badblocks bdflush bzip2 cardbus cardmgr cat ce ce.help chattr chgrp chmod chown chroot clear cmp cp cpio cut date dd ddate debugfs df dirname dmesg ds du dumpe2fs e2fsck eata echo egrep elvis emacs extend false fdflush fdformat fdisk fdomain filesize find findsuper fmt fsck.ext2 fsck.msdos fstab grep gzip halt head hexedit hostname i82365 ifconfig ifport ile init inittab insmod kill killall5 ksyms length less libc.so.5.4.13 lilo lilo.conf ln loadkeys login losetup ls lsattr mawk md5sum memtest mingetty miterm mkdir mkdosfs mke2fs mkfifo mkfs.minix mklost+found mknod mkswap mnsed more mount mt mv nc ncr53c8xx nmclan_cs ntfs pax pcmcia pcmcia_core pcnet_cs ping plip ppa printf ps pwd qlogic_cs qlogicfas reboot rescuept reset rm rmdir rmmod route rsh rshd script scsi_info seagate sed serial_cs setserial sh slattach sleep slip snarf sort split stty swapoff swapon sync tail tar tcic tee telnet test touch tune2fs umount undeb update vi vi.help wc

  最让人放心的是,tomsrtbt 是一个和发行版本无关的程序,甚至你可以把它用来恢复 Windows 9x 。

  丢失了主引导记录后, Linux 就不能启动了。使用 Red Hat 的启动软盘十分简单,只要在启动以后,用 root 登录,然后运行 lilo 就可以了。

  使用 tomsrtbt 的方法是,启动后用 root 登录,然后拿走软盘。

  # mount -t ext2 /dev/hda4 /mnt
  # chroot /mnt
  # /sbin/lilo
  Added linux *
  Added dos
  # exit
  # cd /
  # umount mnt

  在 Red Hat 6.2 之前的版本提供了一个 rescue.img 文件,能用来建立一个单独的紧急磁盘,和启动软盘一起使用。在 LILO: 提示符下,键入 linux rescue 然后按照提示操作,在 6.2 版本以后,Red Hat 把紧急恢复功能做到了安装 CD 上,使用 CD 启动后,键入 "rescue" 就可以了。

  现在假设你的 /etc/fstab 存在一个输入错误,你把启动磁盘 /dev/hda4 写成了 /dev/hda44 ,这样你的系统就不能启动了。

  用 tomsrtbt 软盘启动,按照以下的办法修改 /etc/fstab 就可以了。

  # mount -t ext2 /dev/hda4 /mnt
  # vi /mnt/etc/fstab
  # umount /mnt

  另外一个常见的问题就是没有正常关机,可以采用 tomsrtbt 来修复一个损坏的磁盘分区。

  # e2fsk -f /dev/hda2

  对于一个严重损坏的分区,这个命令需要重复好几次。

  如果一个分区不能完整修复,你可以把重要的文件写到磁盘上,当 tomsrtbt 启动时,把这些文件加载到内存,能把磁盘空间用于其他应用。

  # fdformat /dev/fd0H1440
  # mke2fs /dev/fd0
  # mkdir /mnt/image
  # mkdir /mnt/floppy
  # mount -t ext2 /dev/hda4 /mnt/image
  # mount -t ext2 /dev/fd0 /mnt/floppy
  # cd /mnt/floppy
  # cp /mnt/image/etc/*.conf .
  # cp /mnt/image/etc/conf.modules .
  # cp /mnt/image/var/named/* .
  # cp /mnt/image/home/gwilburn/docs/myrecipes.txt .
  # cd /mnt
  # umount floppy
  # umount image

  以上步骤用到了 fdformat, mke2fs, mount, cd 和 cp 命令,这些命令都包含在 tomsrtbt 之中,在这个情形中,我们把 /etc 目录的配置文件和 DNS 文件作了备份。

  下面的例子是使用 tomsrtbt 来恢复 Windows 的例子。

  # mkdir /mnt/win
  # mkdir /mnt/floppy
  # mount -t vfat /dev/hda1 /mnt/win
  # mount -t vfat /dev/fd0 /mnt/floppy
  # vi /mnt/win/autoexec.bat
  # cd /mnt/floppy
  # cp /mnt/win/autoexec.bat .
  # cp /mnt/win/config.sys .
  # cp "/mnt/win/program files/netscape/bookmarks.htm" .
  # cd /mnt
  # umount floppy
  # umount win

  灾难并不会频繁发生,但是做好灾难准备的最重要事情就是备份数据。我们讨论的所有技巧只是对数据可以恢复的情况下所能采取的一些措施。作为一名专业的系统管理人员,如果没有做好数据备份,那么这个所谓的“专业”是名不副实的。
更多精彩内容其他人还在看

教你隐藏Linux的命令行历史

有的时候你可能不想让一些命令记录你的的命令行历史中,本文整理了多种方法让你可以参考。
收藏 0 赞 0 分享

怎样在Linux上录制你的终端操作及回放

在这次的文章中,我们将简单的了解一下如何在Linux上录制和回放终端会话及以gif格式记录的方法。
收藏 0 赞 0 分享

SUSE Linux登录出现黑屏解决方法

登录linux时出现黑屏的找到这篇解决SUSE的黑屏问题
收藏 0 赞 0 分享

个人学习Linux知识总结第1/4页

个人学习linux经常用到的小知识,方便大家以后查阅
收藏 0 赞 0 分享

Linux 下rename 命令的用法第1/2页

刚学习linux的时候,对文件重命名首先想到的就是rename命令,但是按照在windows下对文件重命名的方式试了N多次都没有反应,在网上一搜索,发现很多人都对rename命令知之甚少,甚至有一部分人说linux下没有rename命令,建议大家用mv命令。鉴于此,于是man r
收藏 0 赞 0 分享

Centos 源

Centos操作说明
收藏 0 赞 0 分享

linux备份文件命令收集

收集一些linux下实现文件备份
收藏 0 赞 0 分享

Linux rdesktop操作系统下远程登录Windows XP桌面

众所周知XP下有"远程桌面连接"用来远程登录桌面,设置也非常简单。那有没有什么办法在linux下远程登录到XP呢?有。用rdesktop这个linux下的软件就能实现。
收藏 0 赞 0 分享

Linux操作系统添加新硬盘方法

linux下添加硬盘的方法
收藏 0 赞 0 分享

CentOS 5.1 4.6最新官方下载地址列表

最近公司接触到centos系统,于是找了下,不太容易找到,所以我直接把官方的下载地址,给贴出来了,方便以后下载
收藏 0 赞 0 分享
查看更多