dd 命令比 rm -rf / 厉害多了,我所有的资料啊 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
cuteshell
V2EX    Linux

dd 命令比 rm -rf / 厉害多了,我所有的资料啊

  •  1
     
  •   cuteshell 2016-04-07 21:21:23 +08:00 13702 次点击
    这是一个创建于 3479 天前的主题,其中的信息可能已经有所发展或是发生改变。

    电脑两块硬盘,第一块安装了一个 cloudready ,第二块装了 ubuntu ,平时一般在 ubuntu 中,今天想研究一下 kali linux ,就执行了 sudo dd if=kali-linux-1.0.9a-amd64.iso of=/dev/sdb bs=512k 。在执行 dd 之前我还用 sudo fdisk -l 看了一下 U 盘是 /dev/sdc ,但是却敲成 sdb 了,等发现已经晚了...

    本来下班回来就很累很想睡觉,硬是忍着没睡。后悔啊,现在完全清醒了,好多资料和软件都没了。人家 rm -rf /最少还提醒一下 use --no-preserve-root , dd 什么都没有啊,就这个认真的执行了我的命令。

    54 条回复    2016-04-11 12:24:45 +08:00
    lifanxi
        1
    lifanxi  
       2016-04-07 21:24:40 +08:00
    这种事我也做过,应该最多只损失第一个分区的少量数据。

    想办法恢复吧,先恢复分区,然后第二个分区的数据应该是无损的,第一个分区的可以先尝试用其它没被破坏的 superblock 的数据来恢复,如果不行,就再用 testdisk 等工具扫描恢复一下。
    algas
        2
    algas  
       2016-04-07 21:25:08 +08:00   1
    不是我不同情你,实在是太喜闻乐见了 :P
    wsy2220
        3
    wsy2220  
       2016-04-07 21:29:32 +08:00 via Android
    不说了,两个月前把妹子的移动硬盘前几百 k 给覆盖了
    blacktulip
        4
    blacktulip  
       2016-04-07 21:29:49 +08:00
    没备份的话数据完蛋早晚的事情,不打错命令硬盘也会坏
    virtualworld
        5
    virtualworld  
       2016-04-07 21:34:14 +08:00
    这就是备份的重要性啊。不但防硬件损坏,还防自己手残。
    algas
        6
    algas  
       2016-04-07 21:36:06 +08:00
    不安慰一下 LZ 我好过意不去啊,
    很久以前在向 U 盘里 dd Live CD 的时候莫名其妙的把我刚装的 Fedora 分区干掉了,
    我现在想起来还是觉得是内存条的问题...
    darasion
        7
    darasion  
       2016-04-07 21:39:16 +08:00
    喜闻乐见。
    cuteshell
        8
    cuteshell  
    OP
       2016-04-07 21:39:29 +08:00
    @lifanxi 谢谢,我试着恢复一下。
    cuteshell
        9
    cuteshell  
    OP
       2016-04-07 21:40:50 +08:00
    @algas 吸取教训吧,以后不清醒的时候不能干危险的事情。
    loading
        10
    loading  
       2016-04-07 21:43:33 +08:00 via Android
    dd ,哈哈,我在龟速网络时代, if of 写反,浪费了一周的下载时间…
    pynix
        11
    pynix  
       2016-04-07 22:05:39 +08:00
    资料都云备份了
    zonghua
        12
    zonghua  
       2016-04-07 22:07:08 +08:00 via iPhone
    太危险
    dvorak4tzx
        13
    dvorak4tzx  
       2016-04-07 22:07:55 +08:00   6
    我记得自己被 rm 坑是 Makefile 里写了 clean: rm -Rf $(PUBLISH_DIR)/*,然后很傻逼的是 PUBLISH_DIR 这个变量是空…… Dafuq ……
    lzhd24
        14
    lzhd24  
       2016-04-07 22:10:49 +08:00 via Android
    楼主,是想玩渗透啊,求带
    yksoft1
        15
    yksoft1  
       2016-04-07 22:11:49 +08:00
    DD 会直接干掉文件系统本身,至少是卷的头部,确实比 rm -rf /厉害多了
    InneRs
        16
    InneRs  
       2016-04-07 22:15:22 +08:00
    恢复管用不?
    xbb7766
        17
    xbb7766  
       2016-04-07 22:23:07 +08:00 via Android
    如果没有执行到底,试试数据恢复软件吧。
    yksoft1
        18
    yksoft1  
       2016-04-07 22:23:37 +08:00
    @InneRs 如果 DD 已经结束,那至少靠机器本身的力量是救不回了
    aivier
        19
    aivier  
       2016-04-07 22:36:48 +08:00
    @wsy2220 我把自己硬盘前 512K 填零了.....可以恢复
    vivisidea
        20
    vivisidea  
       2016-04-07 22:49:47 +08:00
    喜闻乐见,这命令正常执行是直接装好一个系统么?还是要走安装流程的?

    我都是先 mount xx.iso 然后 rsync 到目标分区然后再引导安装的,这么会快一些?
    msg7086
        21
    msg7086  
       2016-04-07 23:04:58 +08:00
    所以说 dd 的时候不要先上 sudo 。
    先用普通权限敲一边,然后看下内容没错,然后再 sudo 。

    你这个其实还算好,我上次 Rails 数据表回滚的时候敲错,直接把整个数据库滚没了,数据恢复都没用。
    你现在至少还能去扫盘恢复数据。
    moonpie
        22
    moonpie  
       2016-04-07 23:09:34 +08:00 via Android   1
    哈哈哈哈我昨天用 mkfs.vfat 格 U 盘手贱敲成了 /dev/sdc 我整个硬盘的数据啊哈哈哈哈
    ffffwh
        23
    ffffwh  
       2016-04-07 23:15:49 +08:00 via Android
    Disk Distroyer
    wensonsmith
        24
    wensonsmith  
       2016-04-08 00:51:10 +08:00
    恢复了木有。。喜欢看峰回路转完美结局
    aprikyblue
        25
    aprikyblue  
       2016-04-08 00:54:26 +08:00
    @dvorak4tzx 这种有办法预防吗。。。不是第一次看到类似的问题了。。
    dommyet
        26
    dommyet  
       2016-04-08 01:02:09 +08:00 via Android
    之前折腾乐金 v410 降版本要刷开发时泄露的 kdz 包 然后为了修复 userdata 分区的容量问题需要手动分区 手一抖删错分区 更改即时写入 卒
    然后花了一晚上才搞好
    Cu635
        27
    Cu635  
       2016-04-08 01:29:32 +08:00
    rm -rf / 在 systermd 上是可能让电脑变砖的……
    https://bbs.archlinux.org/viewtopic.php?id=207549
    gimp
        28
    gimp  
       2016-04-08 08:06:23 +08:00 via Android
    我曾经重装系统装进了我的移动硬盘。。。当时万念俱灰

    (知乎体)如何看待 dd 命令与 rm -rf /?
    (哈哈体) dd 命令不知道比 rm -rf / 高到哪里去了
    (贴吧体)硬盘数据丢失!在线等!!急!!!
    NELSONCHI
        29
    NELSONCHI  
       2016-04-08 08:33:01 +08:00
    喜闻乐见,我每年几乎都因为各种各样的原因意外格盘。。。后来再麻烦我也经把数据上传到网盘 etc.
    Halry
        30
    Halry  
       2016-04-08 08:34:29 +08:00 via Android
    dd 很好玩打,不如试下 dd if=/dev/zero of=/dev/sda?
    66beta
        31
    66beta  
       2016-04-08 08:45:45 +08:00
    前段时间重装 osx ,不小心格式化错了硬盘,都是泪,还好照片都找回来了
    NetCobra
        32
    NetCobra  
       2016-04-08 09:27:15 +08:00
    lz 节哀……

    我的经验,状态不好的时候不要做刷机、系统镜像恢复等高危动作,我多次熬夜都是在这种状态下搞出来的问题。
    hzqim
        33
    hzqim  
       2016-04-08 09:55:42 +08:00
    做这类危险动作还是把非目标 block devices umount 了,再三确认才操作的好。
    或者开机箱拔线后再搞。
    原创性的数据真是无价的。
    redsonic
        34
    redsonic  
       2016-04-08 10:06:34 +08:00
    dd 这类对磁盘或文件系统直接操作的 请用 /dev/disk/by-id , 降低误操作。
    SpicyCat
        35
    SpicyCat  
       2016-04-08 10:07:26 +08:00
    评论好欢乐
    julyclyde
        36
    julyclyde  
       2016-04-08 11:18:15 +08:00
    photorec 扫一遍吧,还能捡出一些内容来
    ToughGuy
        37
    ToughGuy  
       2016-04-08 11:24:53 +08:00
    http://unix.stackexchange.com/questions/46914/recovering-ext4-partition-after-dding-over-start-of-hd

    数据可以恢复的, 你只覆盖了磁盘前面=kali 镜像大小的空间。

    1. 尝试恢复分区表结构
    2. 尝试修复文件系统
    ToughGuy
        38
    ToughGuy  
       2016-04-08 11:27:35 +08:00
    cuteshell
        39
    cuteshell  
    OP
       2016-04-08 14:46:18 +08:00
    @ToughGuy 谢谢,主目录和 /opt 目录都恢复了,也就是全部的资料和比较重要的软件都恢复了。
    xlrtx
        40
    xlrtx  
       2016-04-08 14:46:41 +08:00
    kali 教程上还特意强调了留意自己的盘是 sd?的
    cuteshell
        41
    cuteshell  
    OP
       2016-04-08 14:47:38 +08:00
    @lzhd24 我也不懂,只是会用几个软件,本来想学习一下,还没开始就被打断了。
    cuteshell
        42
    cuteshell  
    OP
       2016-04-08 14:50:01 +08:00
    @InneRs @wensonsmith
    主要的软件和全部的资料都恢复了,很满意了,其他的装一次系统吧。

    我这次可悲的是整个硬盘就一个分区, swap 分区都是用的文件。看来一个比较大的 boot 分区还是挺重要的。
    cuteshell
        43
    cuteshell  
    OP
       2016-04-08 14:51:11 +08:00
    @vivisidea 应该是不同的镜像 dd 后也是不同的,一般像 ubuntu 这样的是需要走安装流程。
    cuteshell
        44
    cuteshell  
    OP
       2016-04-08 14:53:14 +08:00
    @xlrtx 看了一遍那个安装流程,也注意到他们强调了,但是当时就是顺手给敲成 sdb 了。
    rainysia
        45
    rainysia  
       2016-04-08 17:13:08 +08:00
    @vivisidea 这是作一个启动盘.
    sopato
        46
    sopato  
       2016-04-08 18:47:47 +08:00
    不得不说这是今天听到的最开心的事情了, o(∩_∩)o
    wayslog
        47
    wayslog  
       2016-04-08 19:33:38 +08:00
    数据备份的重要性……程序员都得有自己的 NAS ,再搞个 owncloud 来从 NAS 上同步……
    likuku
        48
    likuku  
       2016-04-08 19:38:16 +08:00
    so ,多机和异地备份的重要性啊...
    likuku
        49
    likuku  
       2016-04-08 19:39:00 +08:00
    现在随手测试,拿 vbox 就行了呗。
    itfanr
        50
    itfanr  
       2016-04-09 14:58:22 +08:00
    你这就是清分区表啊。
    yuedingwangji
        51
    yuedingwangji  
       2016-04-09 15:06:46 +08:00
    楼主 你那个命令执行了多久, 个人觉得还是可以恢复回来的,
    cuteshell
        52
    cuteshell  
    OP
       2016-04-09 16:33:43 +08:00
    @itfanr 不只是分区表,后面的 superblock 和 superblock 后面的一部分信息也清除了。
    cuteshell
        53
    cuteshell  
    OP
       2016-04-09 16:36:01 +08:00
    @yuedingwangji 执行了没多久,感觉也就 1s 或者 2s 吧。重要的信息都恢复回来了,但是.git/object 里面的一个目录不正常,不过这个没关系。
    itfanr
        54
    itfanr  
       2016-04-11 12:24:45 +08:00
    @cuteshell 比 rm -rf 还可怕
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1502 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 16:28 PVG 00:28 LAX 09:28 JFK 12:28
    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