SCO Openserver 5.0.5作为一种高效稳定、安全性能高的多用户操作系统,在金融、保险、电信等部门得到广泛的应用。在系统日常维护工作中,有时会遇到一些系统故障。笔者把常见的十个问题总结了一下,希望对大家能有所帮助。
一、打开计算机电源后,主控台屏幕上出现如下信息:boot not found cannot open stage 1 boot failure:error loading hd(40)/boot,然后死机。
分析:这表明系统根目录下的Boot文件丢失或找不到。Boot文件是用于装载并执行UNIX程序的交互式程序,主要用于装载和执行UNIX操作系统的核心,在引导过程中Boot将读取/etc/default/boot,显示引导过程信息,装入并执行/Unix,所以当Boot文件丢失或找不到将导致系统引导失败。
解决方法:
若Boot文件丢失:
1.以Boot盘(应急软盘或安装光盘)引导。
2.在系统引导提示下敲入hd(40) unix,这个命令用于从硬盘把Unix核心载入。然后输入root用户的口令,进入单用户模式,此时出现超级用户提示符#.
3.卸载Boot文件系统,执行命令: umount /stand.
4.装载Boot文件系统,执行命令: mount /stand.(说明:SCO Openserver 5.0.5系统启动后将/stand文件系统设置为只读,且不能更改属性,用此方法使/stand目录可写。)
5.用命令把Boot软盘安装到系统中,执行命令:mount /dev/fd0135ds18 /mnt,然后用命令:cp /mnt/boot /stand将Boot文件拷贝到/stand目录下。
6.用命令umount /dev/fd0135ds18(或umount /mnt)把Boot盘卸载。
7.取出Boot盘,敲入haltsys或reboot命令重新引导系统。
8.在系统正常引导后进入root用户,将/boot文件的属主和组改为bin即可。
若Boot文件找不到:
这种情况一般是由于Cmos配置中硬盘的参数不对,此时只需让系统把硬盘自动检测一下,将参数改正过来即可。
二、计算机加电后,主控台屏幕上出现如下信息:unix not found,然后死机。
分析:这表明Unix系统核心丢失。因为/Unix包含核心,Unix文件受损将导致系统无法装入并行内核,从而出现死机。
解决方法:
1.以Boot盘引导。
2.在系统引导提示下敲入fd(60)unix .Z root=hd(42) swap=hd(41)这个命令用于从Boot盘把Unix核心载入,并将root文件系统安装到硬盘上。然后输入root用户的口令,进入单用户模式,此时出现超级用户提示符#.
3.卸载/stand文件系统,执行命令:umount /stand.
4.装载/stand文件系统,执行命令:mount /stand.
5.把Boot软盘安装到系统中,执行命令:mount /dev/fd0135ds18 /mnt.
6.执行cp /mnt/unix.Z /stand恢复硬盘根目录下的unix文件。这个操作能够将Boot盘上的Unix内核文件压缩复制到硬盘,用户无需对内核文件进行解压缩操作。
7.卸载Boot盘,并重新引导系统。在系统正常引导后进入root用户,将Unix文件的属主和组改为bin和mem即可。
三、机器加电后,在系统引导提示符下键入回车,当第一屏被刷新后显示第二屏时出现许多错误信息,如:INIT:command exec /etc/brc 1>/dev/console 2>&&1 failed to execute ,errno=9(exec of shell failed)等。
分析:这表明系统/bin/sh文件受损或丢失。因为SH是shell标准、作业控制和限制命令的解释程序,所以该文件受损或丢失将导致系统启动失败。
解决方法:
1.以Boot盘引导。
2.在系统引导提示符下按回车,当提示插入root盘时把Boot盘取出并将root盘插入,这样系统全部由应急引导盘引导,直到出现提示符:#.
3.执行命令mount /dev/hd0root /mnt和cp /bin/sh /mnt/bin/sh恢复硬盘根目录下的/bin/sh文件。
4.卸载Boot盘,并重新引导系统,在系统正常引导后进入root用户,将/boot文件的属主和组改为bin即可。
四、系统可以引导,亦能正常处理日常事务,但每当关机时会在主控台屏幕上出现错误信息:/etc/initscript:/etc/uadmin:notfound,然后系统死机,从而导致不能正常关机。这样每次在启动时都要清理文件系统,浪费很多时间,次数多了还可能严重破坏文件系统,导致系统瘫痪。
分析:系统文件/etc/uadmin 丢失或损坏所致。
解决方法一:
1.在系统引导并清理文件系统完成后,以root用户注册。
2.在超级用户下,用命令mount /dev/fd0135ds18 /mnt把root盘安装到系统中。
3.把/etc/uadmin文件从软盘上拷贝到硬盘上:cp /mnt/etc/uadmin /etc/uadmin.
4.卸载root盘并将/etc/uadmin文件的属主和组改为bin即可。
解决方法二:
解决方法一是针对单机、仅有应急盘的情况。在多机互连的情况下,其实还有更为简洁的办法:
1.利用网络用ftp或rcp命令从正常机器上获取uadmin文件。
2.利用软盘使用tar命令从正常机器上获取uadmin文件,然后tar入故障机相应的路径下。
五、机器加电后,在系统引导提示符下键入回车键,当第一屏被刷新后在第二屏的最后出现一行如下信息:Kernel:i/o bufs=600k,然后系统挂起。
分析:这表明系统的/etc/init文件丢失。Init程序在核心初始化的最后阶段开始执行,其进程号(pid)为1.该进程按一定规则启动/etc/inittab文件中所列的进程,引导系统进入所规定的运行级别。它首先读取/etc/inittab中的initdefault项,当所有的进程都创建成功后,init进入循环等待。如果/etc/init文件受损,新的进程就无法创建,从而导致系统挂起。
解决方法:
1.以Boot盘引导。
2.在系统引导提示符下按回车,当提示插入root盘时把Boot盘取出并将root盘插入,这样系统全部由应急引导盘引导,直到出现提示符:#.
3.执行命令mount /dev/hd0root /mnt和cp /etc/init/mnt/etc/init,恢复硬盘根目录下的init文件。
4.卸载Boot盘,并重新引导系统。在系统正常引导后进入root用户,将/etc/init文件的属主和组改为bin即可。
六、系统启动时提示:NO OS.
分析:若此前系统能正常工作,说明系统硬盘的引导块被破坏。
解决方法:
1.以Boot盘引导。
2.在系统引导提示下敲入hd(40) unix,这个命令用于从硬盘把Unix核心载入。然后输入root用户的口令,进入单用户模式,此时出现超级用户提示符#.
3.执行命令instbb hd /dev/hd0a将引导块分区写到硬盘上,以及dparam _w 将主引导块代码写到硬盘上。
4.重新启动机器。
七、系统启动不能进入多用户模式。
分析:如果系统在启动后显示:INIT:can not open /etc/inittab error 2,在按Ctrl-D后系统不能进入多用户模式,那就说明/etc/inittab文件丢失,/etc/inittab中包含给init用的指令。当inittab丢失,init就不能执行系统启动指令且系统不能进入多用户模式,当按了Ctrl-D后,系统依然保持单用户模式。因为/etc/inittab中包含供系统其他部分参考的指令,所以在建立”应急盘”时就要往根文件系统软盘中写入一个特殊的/etc/inittab.因此,如果出现/etc/inittab丢失的问题对系统的恢复就不能简单地把/etc/inittab从应急盘中复制到硬盘中去,而是要把/etc/conf/cf.d/init.base复制到/etc/inittab,然后重新链接核心。
解决方法:
1.启动机器,进入系统维护状态。
2.执行命令cp /etc/conf/cf.d/init.base /etc/inittab,以及/etc/conf/cf.d/link_unix -y 重新建立一个新的/etc/inittab文件。并重新引导系统。
八、/etc/bcheckrc文件丢失。
分析:若系统在引导时显示如下信息:/etc/initscript:/etc/bcheckrc:not found,说明/etc/bcheckrc文件丢失。这个文件是符号连接文件,若源文件完好,则可以从源文件恢复。
解决方法:
1.启动系统,进入系统维护模式。
2.运行fsck对根文件系统进行清理。
3.执行命令cp /opt/K/SCO/Unix/5.0.5Eb/etc/bcheckrc /etc/bcheckrc,或ln -s /opt/K/SCO/Unix/5.0.5Eb/etc/bcheckrc /etc/bcheckrc.重新引导系统。
九、系统引导时显示如下信息:INIT:SINGLE USER MODE /etc/initscript: /bin/sulogin:not found.
分析:说明/ bin/sulogin文件丢失。这个文件是符号连接文件,若源文件完好,则可以从源文件恢复。
解决方法:
1.启动系统,进入多用户模式(sulogin文件丢失不能进入单用户模式)。
2.运行fsck对根文件系统进行清理。
3.执行命令cp /opt/K/SCO/Unix/5.0.5Eb/bin/sulogin /bin/sulogin或ln -s /opt/K/SCO/Unix/5.0.5Eb/bin/sulogin /bin/sulogin.重新引导系统。
十、系统启动时显示LOGIN:ERROR-Failed to initialize policy manager.(IFOR_PM_FATAL)。
分析:出现以上错误的原因,通常是系统时间错误,系统时间比操作系统的安装时间还要早。一般是由于机器的BIOS参数丢失所致。
解决方法:
开机进入机器的BIOS参数设置,修改机器的时间为正确的时间。或者启动操作系统,进入单用户模式,用asktime或date命令修改系统的时间为正确的时间。