您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Solaris下误删除根目录下文件的解决

添加时间:2018-1-15 18:02:20  添加: 思海网络 
 记得几年以前刚了解UNIX操作系统的时候,学会了rm命令,还学会了rm -rf *,我想很多人都经常这样使用,在UNIX下如果不用alias rm rm -i的话,删除根本不做任何提示,这也是UNIX设计的哲学,但是对于新手有时候会容易犯错误的.有时候后果是很严重 .以前在AIX下就一不小心把/目录下的东西删除的差不多,等会按Ctrl+C的时候已经迟了,被批评了一通,还好那个机器没什么东西,从那以后就非常小心了,后来只能重新安装操作系统了,从那以后我印象中这种总量只能重装操作系统了.

  这不,这几天这件事情又发生了,不过这次没那么简单了(不是我干的),这个机器是双机的主机,上面挂的磁阵,安装SC以及Veritas软件,还是数据库,不过这次尝试了一下重装以外的办法,最终花了两个小时(包括查资料时间搞定),当时的场景是这样的:

  话说一位高手在电脑前以无影手的速度击打键盘,突然停了下来,伴着一声惨叫"啊,怎么当前目录在根目录下",我一看高手输入的最后一个命令就是称为UNIX杀手锏的"rm -rf *",这时看了一下,好像只是bin目录没有了,因为bin只是链接到/usr/bin的符号链接,我重新建一个不就可以了,以为到此天下太平了.下午的时候,因为修改一些配置必须重新启动机器,平时几分钟就可以了,可以今天等了好久也没能连上,最后用串口线连上去一看,系统已经进入ok状态,这还不容易,把参数auto-reboot修改为true,再输入go,可是机器经过几分钟机器没有任何反应,我再重启,这样试了几次,还是没用,看来这次问题严重了.没办法只能重装操作系统(以前家里用Windows的时候,只要一中病毒且杀不掉或者系统变的很慢,一个办法重装,有时在想,这样的操作系统让生产硬件厂商也多卖点硬盘和内存之类,不过现在家里电脑早就换成Linux了,再也没有以前那种烦恼了!),费话少说: 把Solaris的安装盘插入光驱,在ok状态输入: boot cdrom -sw,用光盘引导启动以后进入操作系统.

  我们的思路是把原来的根分区挂载以后,找到根分区丢失的文件,把丢失的文件再补回来应该就可以了,好了.正式开始:

  用format命令找到原来根分区所使用的磁盘,我发现format里显示的磁盘顺序和正常启动时显示的磁盘顺序不一样,只能一个一个选中磁盘以后用p查询分区和挂载情况,比如:我发现c1t0d0s1是原来的根分区的话,退出format.

  在/tmp/root/下新建目录mytmproot,mkdir /tmp/root/mytmproot

  mount /dev/dsk/c1t0d0s1 /tmp/root/mytmproot

  可能觉得奇怪,为什么要挂到/tmp下,而不直挂载到/下,你要知道我们是光盘引导,所以根分区是只读的.

  上面的挂载成功以后,到/tmp/root/mytmproot看一下是不是你原来根目录的东东呀,这时我们要找到少了哪些文件,用了一个土办法,找另外一个同样的机器用du或者du -s查看目录下的文件个数和大小进行比较,最终发现/dev的dsk目录没有了,另外/devices下面也少了一些文件,可能大家都知道这下面的文件是干吗的吧?因为/dev/dsk下都是一些符号链接到/devices下的,想手工建立符号链接,但是因为每个机器可能有差别,直接照搬可能有风险,我想起来可以用: devfsadm -C -r /tmp/root/mytmproot, -r选项可以设定根目录的路径,执行完成以后,发现/dev/dsk下面的文件都回来了,心想这样应该差不多了(因为比较发现就这个下面的文件被删除了),重启以后出现一些网卡相关的错误,不管它,重启(从硬盘引导)以后发现以前配置的网卡都不在了,用ifconfig ce0 plumb提示没有这样的设备,一比较发现/devices下面丢失了一些网卡的设备文件,进入ok状态以后,输入probe-scsi-all,再输入watch-net-all,再power-off,重启重新检测硬件进入操作系统,以前丢失的东西都回来了,至此所有问题都解决了.


关键字:Solaris、UNIX、操作系统

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站