前几天我本来是想删除一个文件夹下的所有文件,但忘记进那个文件夹就执行了rm *,这个时候我是在根目录执行的,当时一看好像什么都没影响(数据库运行正常,其它应用也运行正常),也没在意,但今天我再telnet的时候,提示telnetd: /bin/login: No such file or directory
这时才意识到严重性,为我的错误付出代价了,因为是集群环境,我在另一个节点用crs_stat -t看状态的时候,发现该机的服务都是正常的。可是我无法telnet这可怎么办呢?
也在网上查了相关的资料,见如下,我执行了rm *后系统还一直没重启过,但是我现在问题还比较特殊,刚好今天这两台主机的HMC被拆走了,我接到另一台HMC,怎么都认不到这两台主机,主机是P570,必须要HMC的,所以无法在本机进入系统执行下面的操作,请问还有其它办法可以恢复么?急啊?还请大家帮忙。
1. 从引导介质(bootable CD-ROM or bootable tape)起动系统。
2.选择 Start Maintenance Mode for System Recovery (Option 3),进入维护菜单.然后依次再选择如下:
a.Access a Root Volume Group (Option 1).
b.0 continue and Select Volume Group by number.
c.Access this volume group and start a shell before mounting the file systems (Option 2).
3.检查并mount根文件系统
# fsck -y /dev/hd4
#mount /dev/hd4 /mnt
4.重建删除的文件和目录
#cd /mnt
#ln -s /usr/bin bin
#ln -s /usr/lib/boot/unix_up unix 或 #ln -s /usr/lib/boot/unix_mp unix
#ln -s /usr/lib lib
#ln -s /home u
5.重起系统
#cd /
#umount /dev/hd4
#exit
#sync;sync;sync
#shutdown -Fr
注意:
如果你不慎执行了删除命令,并且没有重新启动,请不要按上方法操作。因为这样要求重启计算机,仔细分析可知:
不重启系统,只需做如下步骤:
#ln -s /usr/bin bin
#ln -s /usr/lib/boot/unix_up unix 或 #ln -s /usr/lib/boot/unix_mp unix
#ln -s /usr/lib lib
#ln -s /home u
#sync;sync;sync
--------------------------------------------------------------
问题最终还是解决了,因为做RAC时刚好做了RSH,于是
rsh 10.188.1.12 ln -s /usr/bin bin
rsh 10.188.1.12 ln -s /usr/lib/boot/unix_up unix
rsh 10.188.1.12 ln -s /usr/lib lib
rsh 10.188.1.12 ln -s /home u
rsh 10.188.1.12 sync;sync;sync
收起