V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
lin0kin
V2EX  ›  Linux

请问一觉醒来, fedora40 崩了,包括系统盘内的所有硬盘的分区都损坏了,怎么修复呢?

  •  
  •   lin0kin · 87 天前 · 3255 次点击
    这是一个创建于 87 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用铭瑄 b760 和 12500 装的 homeserver ,周末醒来发现 ssh 无法登录,连上屏幕发现,连 tty 都进不去了

    做了 live 盘发现系统分区损坏了,机器内安装的 6 个机械盘的分区也都损坏了

    gdisk 提示重新分区,testdisk 恢复分区有点问题,有没有大佬指导一下:

    1 、可能是什么原因导致的?病毒吗? 2 、还有什么修复的方法?

    第 1 条附言  ·  85 天前

    只读挂载了一下备份盘,文件系统没错误,挂载没问题,只是全是空的。问一下各位,有那种能直接删除所有文件,包括系统文件的病毒吗?

    root@pvesw:~# btrfs check /dev/sda1
    Opening filesystem to check...
    Checking filesystem on /dev/sda1
    UUID: c064215a-c373-45a1-8b27-f1148fc9b24d
    [1/7] checking root items
    [2/7] checking extents
    [3/7] checking free space tree
    [4/7] checking fs roots
    [5/7] checking only csums items (without verifying data)
    [6/7] checking root refs
    [7/7] checking quota groups skipped (not enabled on this FS)
    found 147456 bytes used, no error found
    total csum bytes: 0
    total tree bytes: 147456
    total fs tree bytes: 32768
    total extent tree bytes: 16384
    btree space waste bytes: 140505
    file data blocks allocated: 0
     referenced 0
    
    44 条回复    2024-07-07 14:51:01 +08:00
    sduoduo233
        1
    sduoduo233  
       87 天前 via Android
    什么分区? ext4 吗?
    flyqie
        2
    flyqie  
       87 天前 via Android
    不太可能是病毒,感觉像是硬件问题
    liyafe1997
        3
    liyafe1997  
       87 天前 via iPad
    你这没描述清楚,是分区表坏了,还是文件系统坏了
    lin0kin
        4
    lin0kin  
    OP
       87 天前
    @sduoduo233 固态是 btrfs ;机械是四个 btrfs ,两个 xfs
    lin0kin
        5
    lin0kin  
    OP
       87 天前
    @flyqie 就用了三个月左右,可能是那个硬件坏了呢?
    kokutou
        6
    kokutou  
       87 天前 via Android
    致态?杂牌?
    lin0kin
        7
    lin0kin  
    OP
       87 天前
    @liyafe1997 固态上的分区表损坏了,引导都失效了;使用 testdisk 查看的 Linux 的 home ,没有找到可恢复的数据;
    机械盘没有找到报错,放在原来机器上的机械盘还能查到分区,并挂载,但是每个盘都没有数据,是空的;拔了一个下来,放到了另一台机器上,使用 gdisk 查看,提示 bad partition
    lin0kin
        8
    lin0kin  
    OP
       87 天前
    @kokutou 西数 730
    povsister
        9
    povsister  
       87 天前
    先尝试 xfs 有没有救吧。btrfs 那真的是灾难
    lin0kin
        10
    lin0kin  
    OP
       87 天前
    @povsister 除了 testdisk ,还有别的选择吗?
    ferock
        11
    ferock  
       87 天前 via iPhone
    那么多盘一起坏了?
    lin0kin
        12
    lin0kin  
    OP
       87 天前
    @ferock 所有盘的数据都没了。应该没坏吧
    lin0kin
        13
    lin0kin  
    OP
       87 天前
    @ferock 拿一个盘试了试,还是能写入读取
    hefish
        14
    hefish  
       87 天前
    不是说 btrfs 已经能跑生产了嘛。。。 这算不算是反例?
    Donahue
        15
    Donahue  
       87 天前
    可怕 还是 ext4 稳
    Jirajine
        16
    Jirajine  
       87 天前
    你装的服务器有问题,硬盘就算坏也不太可能同时坏。
    分区表都 g 了显然和文件系统没有什么关系。
    lin0kin
        17
    lin0kin  
    OP
       87 天前
    @hefish 好像不是 btrfs 的问题,还不太清楚,系统的日志找不回来了
    lin0kin
        18
    lin0kin  
    OP
       87 天前
    @Donahue 不知道是不是系统分区的问题,xfs 和 btrfs 都崩了
    lin0kin
        19
    lin0kin  
    OP
       87 天前
    @Jirajine 不知道什么问题,睡了一觉就这样了,所有盘的数据都没有了,U 盘做了个 live ,看了一下固态的分区损坏了;然后机械没有报分区损坏,挂载所有的盘看,什么数据都没有
    kaneg
        20
    kaneg  
       87 天前
    6 块机械盘同时坏掉,这个概率也太小了吧
    liyafe1997
        21
    liyafe1997  
       87 天前
    @lin0kin 建议先用 WinHex 这类软件先看看硬盘原始的扇区数据是个什么情况,看看是不是有坏道,所有扇区是否可读。建议把整个盘 DUMP 出来再说,这种情况不建议做写入操作(比如就地 fsck )
    lin0kin
        22
    lin0kin  
    OP
       87 天前
    @liyafe1997 固态没有坏道的吧?机械的话,现在全拆了,因为是一比一备份,准备先拿一块看看情况,能不能恢复。主要是 Linux 下几个软件都不能恢复目录结构和文件名,很痛苦
    lin0kin
        23
    lin0kin  
    OP
       87 天前
    @kaneg 感觉像是固态掉盘,系统挂掉了,然后整机异常断电,出的问题。机械本身应该没问题
    liyafe1997
        24
    liyafe1997  
       87 天前
    @lin0kin 谁说的固态没坏道?前几个月刚刚翻车了一块杂牌 4TB QLC 固态



    liyafe1997
        25
    liyafe1997  
       87 天前
    @lin0kin 我当时情况还算 Lucky 的,坏道从容量上来说不算多(印象总共也就十几还是几十 MB ),但是很多致命的地方。首先是 GPT 主分区表(也就是硬盘开头那个)寄了,好在 GPT 在末尾还有个备份分区表。然后有个 NTFS 分区,MFT 寄了一部分,然后有很多文件都有小部分寄了,这直接导致了里面一大票文件都要不了了。不过好在我这整个分区有之前的镜像备份,然后正好里面有几个新的数据没有寄,非常幸运,最后真正失去的只有一个不太重要的东西。

    然后还有个 btrfs 分区,这就更幸运了,在头部寄了大概几十 KB ,看了下那部分几乎没有任何信息(还是是一些所有 btrfs 分区都有的 magic number 之类的,记得当时手动创建了个新的 btrfs 文件系统,然后对比 offset 来看,然后把一些扇区从新的弄到旧的损坏部位),btrfs 的 metadata 似乎是从 128KB 之后的位置开始的,因此这个分区完好无损恢复了。这个 btrfs 在原来的坏盘上也是没法 mount 的,直接会报类似上图的 IO Error ,因为会尝试读开头的扇区。

    建议硬盘出故障时,不要去纠结什么分区表啊文件系统啊这些软件层面的东西,先尝试全盘 dump 所有扇区,看看有没有坏扇区,能读出多少,再用 dump 出来的数据,来修复软件层面的东西,什么分区表啊,文件系统啊,MFT 啊,superblock 啊等等那些。
    lin0kin
        26
    lin0kin  
    OP
       87 天前
    @liyafe1997 应该叫坏块吧
    lin0kin
        27
    lin0kin  
    OP
       87 天前
    @liyafe1997 ok ,我去试试
    Linux 下有什么工具可以用吗?盘太大,dd 生成的镜像没地方放,testdisk 恢复的数据没有文件名
    liyafe1997
        28
    liyafe1997  
       87 天前
    @lin0kin dd 可以考虑 gzip/squashfs 压缩,如果还没地方放那没办法了,可以考虑买硬盘。
    liyafe1997
        29
    liyafe1997  
       87 天前
    @lin0kin 建议用 squashfs 流式保存 dd 来实现压缩的目录,这样以后只要挂载 squashfs 就能访问原始的 dd 镜像了。如果 gzip/pigz 压缩的话以后不要使用,得先解压出来。

    下面是我备份硬盘用的命令,流式 dd 到一个 squashfs 里,压缩算法为 zstd level 9 ,你可以参考:

    mkdir empty-dir
    sudo mksquashfs empty-dir SSD_bak.squashfs -comp zstd -Xcompression-level 9 -p 'dd_image.img f 444 root root dd if=/dev/nvme0n1 status=progress bs=64M'
    ltkun
        30
    ltkun  
       87 天前 via Android
    都 server 了还是 raid1 raid5 这种多搞搞吧
    hanyuwei70
        31
    hanyuwei70  
       86 天前
    op 试着在 live 里面挂载一下 btrfs ,看报错以及 dmesg 信息。
    你这同时坏这么多我怀疑是电源有问题。
    liuliancao
        32
    liuliancao  
       86 天前
    把盘放到别的电脑上面 先备份吧 然后尝试 fsck 类似的看看 然后最好截图下究竟报啥错 比如 一般情况 rescue 还是可以进去的
    wildlife
        33
    wildlife  
       86 天前
    有可能是 SSD 问题,曾经我也在某个 SSD 上运行 Linux ,期间总是出现各种问题,后来有次我从外部拷贝了 2 次同一份大文件,发现两个文件的 hash 居然对不上。。。
    fugu37
        34
    fugu37  
       86 天前
    @wildlife #33 这也可能是内存不稳定
    lin0kin
        35
    lin0kin  
    OP
       86 天前
    @hanyuwei70 没有找到报错
    lin0kin
        36
    lin0kin  
    OP
       86 天前
    @liyafe1997 只有一个 8t 的机械空着。找人借盘中。
    所有机械都使用 rsync 备份文件到另一张盘,没想到全挂了
    lin0kin
        37
    lin0kin  
    OP
       86 天前
    @ltkun 存重要数据的租了 raid1 ,一样挂掉。还没法恢复
    lin0kin
        38
    lin0kin  
    OP
       86 天前
    @hanyuwei70 京东买的新的,全汉蓝爆 plus 。也就用了几个月,不知道是不是硬盘背板供电的问题
    lin0kin
        39
    lin0kin  
    OP
       86 天前
    @fugu37 系统没了,连日志都没有
    lin0kin
        40
    lin0kin  
    OP
       86 天前
    @wildlife 怀疑是硬盘背板的问题,之前是四盘,运行三个月,没啥问题
    lin0kin
        41
    lin0kin  
    OP
       86 天前
    @wildlife ssd 掉盘了,导致系统异常断电?
    kokutou
        42
    kokutou  
       86 天前 via Android
    btrfs 也是个大雷。。。
    然后你寨版的内存也不知道稳定不稳定。。。
    lin0kin
        43
    lin0kin  
    OP
       85 天前
    @kokutou 不知道是不是中毒了,所有的文件都被删了,系统盘的分区损坏了,其他盘好像没啥问题,挂载的盘数据都是空的,两个没有挂载的盘文件系统没有损坏,只是没有文件。
    hanyuwei70
        44
    hanyuwei70  
       73 天前
    你这个太奇怪了,如果炸了怎么 check 还是好的,会不会是有误操作之类。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5136 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 01:17 · PVG 09:17 · LAX 18:17 · JFK 21:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.