有一台SCO5。0。6 HP DL360机器,
由于误操作将/usr/lib/libscoket.so.1文档删除,导致系统故障。
现已用应急boot盘和root盘将该文档恢复。
但是从硬盘启动时,已通过操作系统的硬件检测,出现硬件列表后
报错:
warning exit-/etc/init (PID 1) died, status 0x0000008B

请诸位大虾给谢建议,先谢了。

saintdragon 回复于:2005-06-08 15:02:22
操作系统起来了吗?

CNL 回复于:2005-06-08 15:50:16
/usr/lib/libsocket.so.1只是个连接文档,到同一版本其他机器上
ls -l /usr/lib/libsocket.so.1
看看实际文档的位置,恢复实际文档后再手工ln -s重新在/usr/lib建立对应连接

seventh 回复于:2005-06-08 16:19:55
先谢过两位斑竹的回复。
libsocket.so.1的问题已修复了。
只是从硬盘启动的时候,显示到硬件列表后就报错,
还未出现维护方式的提示,就hung住了。

seventh 回复于:2005-06-08 16:33:17
我还检查了/etc/init 文档的大小和属组(参照另一台同配置的机器)
没有问题呀。

lw371 回复于:2005-06-08 16:37:02
没那么简单,libsocket.so.1自身更有很多连接文档指向他,打过补丁后指的更多,
楼主还是重装算了

seventh 回复于:2005-06-08 16:42:21
我已在另一台正常的机器上find了任何的libsocket.so.1文档,
并把相关的连接也都重做了。我是帮同事修这台机器的(生产机),
要重装会很繁的。

seventh 回复于:2005-06-09 10:51:22
顶一下

CNL 回复于:2005-06-09 11:04:15
在其他同版机器上
ls -l /usr/lib/libsocket.so
看看是否也指向so.1了,连接文档正向查容易,反向查引用他的连接就困难了
您总不能ls -l *来一个个确认更有哪些文档连向so.1吧
看了sco的有关文档,系统动态库被误删将导致内核体系混乱,修复的可能性不大

zhaocz 回复于:2005-06-09 12:16:01
刚知道有这样的情况,应该加精起来

seventh 回复于:2005-06-09 13:54:43
[quote:fb1c7b4428="CNL"]在其他同版机器上
ls -l /usr/lib/libsocket.so
看看是否也指向so.1了,连接文档正向查容易,反向查引用他的连接就困难了
您总不能ls -l *来一个个确认更有哪些文档连向so.1吧
看了sco的有关文档,系统动态库被?.........[/quote:fb1c7b4428]

ls -l 能够看到链接的个数呀。
我也在Google上搜了相关的信息,现在没找到解决办法。
至于“系统动态库被误删将导致内核体系混乱”的原理还希望您能周详地指点一下。

lw371 回复于:2005-06-09 17:42:28
#cd /usr/lib
#rm libsocket.so
#rm libsocket.so.1
#ln -s /opt/K/SCO/Unix/5.0.6Ga/usr/lib/libsocket.so.1 libsocket.so.1
#ln -s /opt/K/SCO/Unix/5.0.6Ga/usr/lib/libsocket.so libsocket.so
#cd /etc/conf/cf.d
#./link_unix
重起机器
动态库恢复必须要重新连接内核,否则内核引用的还是老的错误位置

12xuwei 回复于:2005-06-10 09:39:29
就是以前没有见的,加精

wcy87j 回复于:2005-06-10 15:52:34
谢谢lw371 我试一下重链内核,其他的步骤已做过。

xiajuyun 回复于:2005-06-10 16:17:02
哪位大哥(姐)有sco506的/etc/conf/cf.d/mtune文档,拷贝一份给小弟,急!!!

seventh 回复于:2005-06-10 17:00:31
从boot软盘启动机器后,/dev/boot 设备为软盘,当我把/dev/hd0root mount 到/mnt后,到/mnt/etc/conf/cf.d下
执行link_unix 时,系统将使用 /etc/conf/cf.d 和 /stand这两个
绝对路径,而当前这两个绝对路径是得不到的。
所以无法重连内核。

lw371 回复于:2005-06-10 17:29:33
# /etc/chroot /mnt /bin/sh
进入子shell后您就发现当前的根就变成您要的/了

wcy87j 回复于:2005-06-10 18:34:21
周一再按
# /etc/chroot /mnt /bin/sh 操作
再谢lw371

CNL 回复于:2005-06-13 08:37:16
进展如何?

seventh 回复于:2005-06-13 08:42:46
少等,正在做。。。

seventh 回复于:2005-06-13 09:52:02
首先感谢楼上诸位高手的帮助,最后按照lw371 的提示主和搞定了。
现将完整的操作步骤归纳如下:
1、从SCO5.0.6光盘制作boot 一张(备机上做不出来boot盘!,怪异);
2、从备机置做root盘一张;
3、准备5i raid 卡的BLTD盘一张;
4、从boot盘引导系统至 boot:
输入
fd(64)unix ramdisk=fd(64)/ramdisk.Z root=ram(7) ram.preload=7 linkprompt="Haha <Return>" link=ciss
5、分别插入BLTD盘和 root盘,系统启动到 # 提示;
6、mount /dev/hd0root /mnt ;
7、cp /usr/lib/libsocket.so.1 /mnt/usr/lib/
cp /usr/lib/libsocket.so.1 /mnt/usr/lib/libsocket.so
chmod 555 /mnt/usr/lib/libsocket.so*
chown bin:bin /mnt/usr/lib/libsocket.so*
这里用的是从软盘上的root系统自带的libsocket.so文档。因为前几次用硬盘上的 /mnt/opt/K/Unix/SCOxxx/usr/lib下的文档作连接后,生成的连接文档大小和备机的相比较总是达三个字节。并且执行第8步后仍报libsocket.so.1 连接错。
8、/etc/chroot /mnt /bin/sh 转换/mnt 到/ ;
9、/etc/conf/cf.d/link_unix
10、sync ;reboot
11、取出软盘从硬盘启动成功!

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!