• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Unix 操作系统常见故障恢复技巧

发布: 2007-6-08 22:43 | 作者: seanhe | 来源: | 查看: 23次 | 进入软件测试论坛讨论

领测软件测试网
Unix 操作系统常见故障恢复技巧
摘自《计算机世界》  作者:辽宁省铁法市建设银行 国金付  


--------------------------------------------------------------------------------
 

SCO Unix 操作系统是一个多用户、多任务的操作系统,在日常的系统维护中,正确处理突发的灾难故障(如不能启动或不能登录等),保证数据的完整可靠,是系统管理员应该掌握的一种技能。本文介绍有关该系统的一些常见故障的恢复技巧。 
应急引导盘的制作 
在系统配置完成后,创建boot/root应急引导盘。下面以SCO OpenServer 5.0为例,介绍应急引导盘的制作步骤: 
● 以超级用户root 注册; 
● 进入创建应急引导盘的界面:  
#mkdev fd 
● 根据提示制作boot和root盘,其中制作boot盘时一般选择与本机相同的内核。 
处理“No os”提示 
如果系统引导失败或显示“No os”信息,说明引导块中/etc/hd0boot和/etc/hd1boot或主引导块/etc/masterboot 被破坏了,需要进行恢复: 
● 插入boot 盘引导,当出现boot: 提示符时,键入命令: 
hd(40)unix 
● 进入单用户方式,并键入下列命令: 
#instbb hd /dev/hd0a 
#dparam -w 
其中,instbb把部分引导块写入硬盘; dparam 把主引导块代码写入硬盘的主引导块。对于某些硬盘,还需要按dparam 的描述标记硬盘划分情况。 
处理boot问题 
如果系统引导时,出现如下错误信息: 
boot not found 
cannot open 
stage 1 boot failure: error loading hd(40) /boot 
这表明系统中的/boot损坏或丢失了,可以按如下方法进行恢复: 
● 插入boot引导盘,重新引导机器。在boot: 提示下键入: 
fd(60) unix.Z root=hd(42) 
上述命令从软盘上引导系统,并从软盘上装入核心,安装根文件系统。 
● 在提示符下键入root口令,进入单用户模式。卸载/stand 文件系统 (boot和核心在该文件系统中):  
umount /stand 
由于/boot文件系统通常是以只读方式安装的,所以在替换boot文件之前,必须先把它卸下,再重新安装上。 
● 重新安装/stand文件系统: 
mount /stand  
● 安装引导盘: 
mount -r/dev/fd0 /mnt 
● 恢复/boot文件: 
cp /mnt/boot /stand 
该命令在硬盘上复制一个新的/boot文件。 
● 把引导盘从驱动器中取出之前,键入如下命令: 
mount /mnt 
重新启动系统即可。 
处理Unix文件问题 
如果在开始引导时,系统显示:unix not found,则表明系统文件被损坏或丢失了,该文件包含了系统核心的引导映像。Unix文件丢失后,可以从另外的核心文件(如unix.old或unix.safe)上引导系统,为此,只须在boot提示符下键入替代的核心文件名即可。 
如果在系统上没有另外的核心文件,就需要从应急盘引导系统,以便恢复系统unix文件。首先,在boot:提示下键入: 
fd(60) unix.Z root=hd(42)swap=hd(41) 
然后,在单用户模式下,键入命令: 
umount /stand 
mount /stand 
mount -r/dev/fd0 /mnt 
cp /mnt/unix.Z /stand  
处理不能进入多用户问题 
如果按<ctrl> +D键后,系统进入多用户方式失败,或在引导时显示如下信息,表明/etc/inittab文件丢失:  
init: cannot open /etc/inittab errno: 2 
文件/etc/inittab中包含init命令。如果文件inittab丢失了,就不能执行系统启动命令,系统也就不能进入多用户方式。所以,按<ctrl> +D键时,系统停留在单用户模式下,并显示上述出错信息。 
要恢复inittab文件,必须重建核心环境: 
● 进入系统维护模式,键入以下命令: 
#cd /etc/conf/cf.d 
#touch /etc/.new-unix 
#../bin/idmkenv 
● 在系统提示选择信息时,键入y并按<ctrl>键,然后键入命令: 
cat /etc/inittab 
● 如果系统提示有关不能打开该文件的信息,键入命令: 
ln -s/var/opt/K/SCO/unix/* /etc/inittab /etc/inittab 
● 再键入exit后,系统出现如下信息: 
Enter run level(0-6,s or S): 
键入2,系统即可以进入多用户方式。 
处理root文件问题 
如果root文件系统遭到破坏,可以通过以下步骤进行恢复: 
● 用应急boot软盘启动,并根据提示插入应急root盘。 
● 在root提示符下键入命令: 
fsck /dev/hd0root 
如果fsck检查无误,那么使用haltsys关闭系统,并且从硬盘启动即可;如果fsck检查有误,那么继续进行以下设置: 
● 重新配置系统硬盘: 
#mkdev hd 
用户可以运行所有的初始化硬盘的应用程序对硬盘重新进行配置。 
● 当系统提示:making filesystems后,系统将返回到root提示符下,键入如下命令整理硬盘上的root文件系统: 
#fsck /dev/hd0root 
● 安装硬盘上的root 文件系统: 
#mount /dev/hd0root /mnt 
● 恢复硬盘上的root文件系统的备份: 
cd /mnt 
cpio -ivmkBud -I/dev/xxx 
其中,xxx表示磁带驱动器设备名。对于1/4英寸盒式磁带驱动器,xxx为rcto;对于mini盒式磁带驱动器,xxx为rctmini。另外,用户还可以根据实际情况,用cpio命令的其他选项完成此项工作。 
完成备份工作后,还要确认stand目录是否位于root文件的顶层,如果不是,使用如下命令行进行相应的调整:  
mkdir stand 
● 卸载和整理恢复的root文件系统: 
cd / 
umount /dev/hd0root 
fsck /dev/hd0root 
此时,系统将会提示一个警告信息,用户可以忽略这个警告信息: 
umount: warning: /dev/filesystem was not in mount table  
● 检查boot文件系统(/stand):  
fsck /dev/boot 
● 安装boot文件系统: 
mount /dev/boot /mnt 
● 使用如下命令卸载和整理恢复的boot文件系统: 
cd / 
umount /mnt 
fsck /dev/boot 
重新启动系统即可。 
处理emulator问题 
如果在开始引导时,系统显示:No floating is available ……信息,表明系统的/etc/emulator文件被损坏或丢失了,可以按如下步骤恢复: 
● 插入boot应急盘启动系统,在出现boot:提示时回车。 
● 清理根文件系统: 
#fsck -s/dev/hd0root  
● 用应急引导盘重新启动系统,键入命令: 
#/etc/mount /dev/hd0root /mnt 
#cp /etc/emulator /mnt/etc/emulator 
#/etc/umount /mnt 
重新启动系统即可。 
处理login文件丢失 
当系统提示“login:”,但输入后却不能登录时,显示“cann't exec /bin/login: no such file”信息,表明login文件损坏或丢失。 
● 插入boot应急盘,重新启动系统,进入维护状态。 
● 恢复登录文件: 
# cpio idv -I/dev/rct0 bin/login 
 


 zlxgoal 回复于:2002-08-06 21:14:16
我的机器的问题不在上面的类型中阿!

 sdccf 回复于:2002-08-06 22:19:21
这只是一部分常见的故障。

 zlxgoal 回复于:2002-08-06 23:44:30
还有更多么?我想知道!看有没有和我机器故障一样的!!

 jasonliang79 回复于:2003-01-01 01:59:04
但是我按照你的方法,解决NO OS的问题行不通,我用的是CD启动系统,当在:号后键入hd(40)unix 时系统提示不行,请问是为什么?

 sensir 回复于:2003-01-01 04:08:19
保持系统健壮性的良好习惯:
经常sync

 jin00_0 回复于:2003-10-10 21:12:17
处理“No os”提示 
如果系统引导失败或显示“No os”信息,说明引导块中/etc/hd0boot和/etc/hd1boot或主引导块/etc/masterboot 被破坏了,需要进行恢复: 
● 插入boot 盘引导,当出现boot: 提示符时,键入命令: 
hd(40)unix 

可是我的机器输入 hd(40)unix 还是不行,又返回到boot:提示符。
还有别的方法吗?急救!!!

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网