有关UNIX启动的一些体会

发表于:2007-05-26来源:作者:点击数: 标签:
UNIX 主机启动时,不出现boot:一行,光标不动,(主机设为光驱,软驱,硬盘启动时,软盘未取出)或者说感染了病毒. 解决方案 :先从UNIX原理上说起,假设UNIX装在活动的第一分区.UNIX中把硬件全部当做文件来管理,第一个物理硬盘是/dev/hd0,第二个物理硬盘是/dev/hd10,

UNIX主机启动时,不出现boot:一行,光标不动,(主机设为光驱,软驱,硬盘启动时,软盘未取出)或者说感染了病毒.解决方案:先从UNIX原理上说起,假设UNIX装在活动的第一分区.UNIX中把硬件全部当做文件来管理,第一个物理硬盘是/dev/hd0,第二个物理硬盘是/dev/hd10,依此类推:第一个物理硬盘的逻辑分区从/dev/hd01到/dev/hd04,/dev/hd0a特指活动分区.主引导程序,引导0和引导1在UNIX系统中都有备份,它们分别为/etc/masterboot,     /etc/hdboot0, /etc/hdboot1.      
安装了UNIX系统的机器启动过程大概是这样的:上电----BIOS检查硬盘------从硬盘物理0扇区加载主引导程序-----从活动分区,即UNIX分区加载boot0----加载boot1-----检查divvy表,找到根文件系统-------装入/boot,显示引导提示boot::-----装入并执行内核/unix------启动完毕.
了解了启动过程后,对本文开始提出的问题就很好处理了.首先准备应急引导盘,UNIX系统维护人员应该是常备的,即使没有也可以立即到其他机器用mkdev fd命令做一张.用应急引导盘启动,进入软盘根文件系统,连接硬盘根文件系统:
# mount /dev/hd0root /mnt
如果提示出错,检查一下根文件系统:
# fask /dev/hd0root
再次连接,接着先恢复硬盘主引导程序:
# cp  /mnt/etc/masterboot  /dev/hd00
然后恢复引导0
# cp  /mnt/etc/hdboot0  /dev/hd0a
重启:
# umount /mnt
# reboot
至此故障解决.顺便说一下,如果其它原因造成UNIX系统不能启动,除了上面两个步骤外,还可能要恢复引导1和boot文件.因为引导1在UNIX分区的1KB偏移处,所以不能直接拷贝,必须用dd命令:
# dd  if=/mnt/etc/hdboot1 of=/dev/hd0a seek=1 bs=1k
最后恢复boot,将根文件软盘取出,插入应急引导盘,执行:
# umount /mnt
# mount –r /dev/fd0135ds18 /mnt
# cp /mnt/boot /tmp
# umount /mnt
# mount /dev/hd0root /mnt
# cp /tmp/boot /mnt
对于SCO UNIX ,boot已经不存放在根文件系统下,而是存放在/boot 下,上面的步骤第5 行应改为: 
# mount /dev/boot /mnt
恢复后执行reboot重启计算机即可.

【发表回复】【查看CU论坛原帖】【添加到收藏夹】【javascript:window.close()">关闭】
 unix_sco 回复于:2004-01-17 12:48:30
建议加精!

 htldm 回复于:2004-01-17 12:59:04
好文章!确实是精华!

 凝嫣 回复于:2004-01-17 14:04:52
大家好才是真的好!^_^

 fox2 回复于:2004-01-18 09:28:12
好东西啊!!! 
    我的机器状的 sco unix 和windows2000 的双系统。我用瑞星的磁盘杀毒的时候部知道把 sco unix   的什么搞坏了,连boot 都不出了。我一直懒的重新安装,这次用你的办法试一试!!!

    祝:春节快乐!万事如一!

 罪人 回复于:2004-01-20 09:48:18
fox2兄弟,你说的情况和我的一样,不过我用的是redhat linux 我是用lin下的grub做引导,但在win下我曾用杀毒工具杀毒时,同样把grub当做了分区表病毒来处理,我当时不知是什么原因,还以为真的中了毒,就想也没想就在dos模式下把它杀了,后过与你的情况一样那样让人感到心痛,我的lin不能启动了。一开机没了lin的引导菜单。后来在一次意外,我把机器的所有分区都格了,所有的系统都重装了一次,分别为win2k与linux,同样,我抱着好奇的心态,在win下用同样的杀毒软体查了一次,同样是说分硬盘引导区有分区表病毒,但我在装完系统之后没连上网,软体也没怎么装,就只是装了这一杀毒软体,怪事!难道它把grub当成了病毒??
   这个问题也许好多玩lin与win双系统的兄弟遇到过,真是怪事!!!

 jencle 回复于:2004-01-20 09:57:47
好东西

 jencle 回复于:2004-01-20 09:58:46
好东西

 cxzty 回复于:2004-01-20 22:39:10
不错!好!好!好!

 abist 回复于:2004-01-20 23:04:59
功力颇深

原文转自:http://www.ltesting.net