• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Solaris下误删除根目录下文件的解决之道
    POST TIME:2021-10-20 12:32

     记得几年以前刚接解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 X86解决不能识别网卡的办法
    下一篇:Solaris系统下如何挂载光驱
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信