阿里云服务器一不小心 rm -rf / 了求恢复的办法 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
m939594960
V2EX    问与答

阿里云服务器一不小心 rm -rf / 了求恢复的办法

  •  
  •   m939594960 2016-12-06 23:46:35 +08:00 12071 次点击
    这是一个创建于 3243 天前的主题,其中的信息可能已经有所发展或是发生改变。

    阿里云服务器一不小心 rm -rf / 了

    主要数据的目录还能 cd 进去 但是其他的命令都不行了 ls dir ll 都不行了。。

    我只想吧这部分文件恢复出来 不知道改咋弄。。 急

    49 条回复    2016-12-08 09:58:00 +08:00
    Kylinsun
        1
    Kylinsun  
       2016-12-06 23:48:26 +08:00 via Android
    回滚。
    xmoiduts
        2
    xmoiduts  
       2016-12-06 23:48:38 +08:00 via Android
    从快照里回档啊
    gogohigh
        3
    gogohigh  
       2016-12-06 23:51:16 +08:00
    到底怎么不小心才能 rm -rf / = =
    m939594960
        4
    m939594960  
    OP
       2016-12-06 23:52:06 +08:00
    @Kylinsun
    @xmoiduts 我问了客服 说没有快照。。。。
    m939594960
        5
    m939594960  
    OP
       2016-12-06 23:52:29 +08:00
    @gogohigh rm -rf ./* 没想到笔记本的键盘 .的位置不对 然后就。。。。。
    just1
        6
    just1  
       2016-12-06 23:53:48 +08:00 via Android
    快照要自己做策略,不会没做吧
    m939594960
        7
    m939594960  
    OP
       2016-12-06 23:57:12 +08:00
    @just1 没做。。。现在已经绝望了
    xiandao7997
        8
    xiandao7997  
       2016-12-07 00:00:52 +08:00
    总会看到这类事故,不知道 linux 本身可以写脚本禁止执行这个命令吗。。。
    win 党求教。
    m939594960
        9
    m939594960  
    OP
       2016-12-07 00:11:41 +08:00
    现在不奢望什么 恢复了。。只要能把这些还活着的目录中的几个文件导出来就行
    privil
        10
    privil  
       2016-12-07 00:14:59 +08:00 via iPhone
    @m939594960 千万别关 ssh 窗口
    privil
        11
    privil  
       2016-12-07 00:16:51 +08:00 via iPhone
    @m939594960 百度 如何拯救一台 glibc 被干掉的 Linux 服务器 按照知乎这篇文章的做法试试
    Felldeadbird
        12
    Felldeadbird  
       2016-12-07 00:19:08 +08:00 via iPhone
    如果可以提供 live cd ,加 vnc 就可以解决了。
    m939594960
        13
    m939594960  
    OP
       2016-12-07 00:22:11 +08:00
    @Felldeadbird 阿里云带这个功能么?
    m939594960
        14
    m939594960  
    OP
       2016-12-07 00:22:24 +08:00
    @privil 看了正在尝试
    bdbai
        15
    bdbai  
       2016-12-07 00:25:53 +08:00 via Android
    @xiandao7997 alias 好像可以
    m939594960
        16
    m939594960  
    OP
       2016-12-07 00:30:58 +08:00
    @privil

    这次,我是把 busybox 直接写入到

    printf '...' > /bin/cp

    这步怎么操作啊 我下载了 busybox
    wwqgtxx
        17
    wwqgtxx  
       2016-12-07 01:30:08 +08:00 via iPhone
    @m939594960 人家不是写的够清楚的了

    另外找台同配置的 Linux ,用 xxd 或 hexdump 配合一点点脚本,或者直接用 python 写个小脚本,把 ld.so 文件转储成若干条 printf '...' >> file 的命令(考虑到 bash 单行命令的长度限制,我没有尝试只生成一条命令)

    你把上面那段文字中的 ld.so 替换成 busybox 不就行了

    虽然个人感觉他这个方法对你的情况不一定有用
    gamexg
        18
    gamexg  
       2016-12-07 02:01:11 +08:00
    我记得好像可以不关机做快照,先做个快照,然后用快照新建个虚拟机 2 ,联系客服再新开一个虚拟机 3 将虚拟机 2 的硬盘挂载到虚拟机 3 ,在进行读取。

    注意现在的虚拟机别关机也别关 ssh ,因为快照方案不一定有效,虽然看你的情况只是 bin 等目录被删除,数据目录未出问题,所以可以尝试快照方案。
    baichi
        19
    baichi  
       2016-12-07 02:14:50 +08:00
    python 还可以用么? 用 python -m simpleHTTPServer 试一下?
    syahd
        20
    syahd  
       2016-12-07 07:22:26 +08:00 via Android
    直接控制台登录不行吗
    kouryu
        21
    kouryu  
       2016-12-07 07:35:22 +08:00 via iPhone
    看成把阿里服务器……,刚准备进来给你点赞捐点跑路费什么的……
    wenymedia
        22
    wenymedia  
       2016-12-07 07:47:53 +08:00 via Android
    @kouryu 真的笑出了声…
    ryd994
        23
    ryd994  
       2016-12-07 07:50:44 +08:00 via Android
    不是说了只要救数据么?
    关机挂到别的虚拟机上不就行了
    momi
        24
    momi  
       2016-12-07 08:30:35 +08:00 via Android
    @m939594960 我很困惑,删除当前目录录的文件,我从来都是用 rm -rf *,如果有.开头的文件再来一次 rm -rf .*,虽然麻烦点,但绝对不会删除 /
    wyntergreg
        25
    wyntergreg  
       2016-12-07 08:54:50 +08:00   1
    ./*的你们是不是都是强迫症,打那个./是为了多按两次机械键盘听响吗?

    想多听响的是不是要打././././././*?
    allenhu
        26
    allenhu  
       2016-12-07 08:56:41 +08:00 via Android
    删除当前目录文件通常也就是 rm -rf *, rm -rf ./* 就不好说啥了,估计只能重装
    m939594960
        27
    m939594960  
    OP
       2016-12-07 08:59:00 +08:00
    @ryd994
    @gamexg 已经把数据救回来了 谢谢啦
    m939594960
        28
    m939594960  
    OP
       2016-12-07 08:59:38 +08:00
    @allenhu
    @wyntergreg 怪我了。。。我就是觉得./*才标准。。以后注意了 吸取教训了
    bbbb
        29
    bbbb  
       2016-12-07 09:11:23 +08:00
    求教,怎么恢复的?
    m939594960
        30
    m939594960  
    OP
       2016-12-07 09:14:15 +08:00
    @bbbb 。。有另一个同事开着 sftp 呢。。。。就把数据都拉回来了,不过系统还是没办法恢复
    PoroProCom
        31
    PoroProCom  
       2016-12-07 09:42:21 +08:00
    怎么找回来的
    ids
        32
    ids  
       2016-12-07 11:15:16 +08:00 via Android
    rm -rf / 强制删除所有数据,无解了。
    mansur
        33
    mansur  
       2016-12-07 11:39:55 +08:00
    如果是公司的就细软跑吧
    codeyung
        34
    codeyung  
       2016-12-07 11:42:56 +08:00
    ...可以
    lzx1413
        35
    lzx1413  
       2016-12-07 15:36:50 +08:00
    为啥直接上了 root 权限去删的
    m939594960
        36
    m939594960  
    OP
       2016-12-07 15:47:49 +08:00
    @lzx1413 跟一个小的外包团队弄得。。 没在乎那么多。。谁知道。长记性了
    bao3
        37
    bao3  
       2016-12-07 16:48:46 +08:00
    用 vps 任何操作前先 snapshot ,像我这样就是另开一个新的 vps , clone 一样,然后安心做任何操作。
    m939594960
        38
    m939594960  
    OP
       2016-12-07 16:49:43 +08:00
    @bao3 长记性了
    Mrxx
        39
    Mrxx  
       2016-12-07 16:52:34 +08:00
    你们都是怎么做到忍住笑认真回复的
    m939594960
        40
    m939594960  
    OP
       2016-12-07 16:54:44 +08:00
    @Mrxx 告诉你个事。服务器让我 rm -rf 那天的白天,我笑了半天那个卸载 docker 被 4 楼骗 rm -rf /那个。。 晚上就有报应了。
    satifanie
        41
    satifanie  
       2016-12-07 17:30:03 +08:00
    我想起了一个笑话,重装 Nginx 删除原来的文件执行命令了: rm -fr / usr/local/nginx
    lslqtz
        42
    lslqtz  
       2016-12-07 17:44:15 +08:00 via iPhone
    还好上次我做了...
    如果没有快照,只能关机让阿里云的人帮忙数据恢复了。。。
    lslqtz
        43
    lslqtz  
       2016-12-07 17:45:14 +08:00 via iPhone
    @m939594960 我选择直接用. 不带 /* 或者在目录直接 rm -rf *
    mahone3297
        44
    mahone3297  
       2016-12-07 17:51:03 +08:00
    @m939594960 》有另一个同事开着 sftp 呢。。。。就把数据都拉回来了,不过系统还是没办法恢复
    没懂,请教 lz 。你都删除数据了,如何开个 sftp 就把数据拉回来了?
    m939594960
        45
    m939594960  
    OP
       2016-12-07 18:03:16 +08:00
    @mahone3297 还没都删掉 我 ctrl+c 的比较快
    jiangkun
        46
    jiangkun  
       2016-12-07 18:49:57 +08:00 via iPhone
    以前是有这个功能,不过现在要单独收费了。
    mengzhuo
        47
    mengzhuo  
       2016-12-07 20:04:08 +08:00
    扯吧
    删除 / 需要--no-preserve-root 这个参数的
    m939594960
        48
    m939594960  
    OP
       2016-12-08 08:56:19 +08:00
    @mengzhuo 扯什么,你去阿里云开个 ubuntu 14 的你试试
    mengzhuo
        49
    mengzhuo  
       2016-12-08 09:58:00 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     949 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 40ms UTC 19:44 PVG 03:44 LAX 12:44 JFK 15:44
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86