![卸载 /dev/磁盘](https://linux22.com/image/1571075/%E5%8D%B8%E8%BD%BD%20%2Fdev%2F%E7%A3%81%E7%9B%98.png)
给定一个 30TB 的磁盘分区,位于 hw raid5 上。LVM 位于顶部,文件系统为 ext4。(其中 99.9% 的数据已满。)我想再添加 20TB 并调整分区和文件系统的大小。在调整大小之前,它坚持先运行 FSCK。它已经运行了一个多星期,我取消了,但无法挂载分区。首先需要 FSCK。所以我重新启动了它。
fsck.ext4 -v -C 0 /dev/vgname/lvname
e2fsck 1.44.3 (10-July-2018)
Superblock has an invalid journal (inode 8).
Clear<y>? yes
*** journal has been deleted ***
Resize inode not valid. Recreate<y>? yes
并且已经过去31天了,它仍然在运行,占用了1个CPU核心100%。
当看着它斯特拉斯,这就是我看到的:
strace -p 3174
strace: Process 3174 attached
strace: [ Process PID=3174 runs in x32 mode. ]
strace: [ Process PID=3174 runs in 64 bit mode. ]
pread64(4, "\375\210\372\374\360\10\375=$\375\254\221\375\334\361\375l?\376?U\376\24?\376\27\351\375:\305\375\217"..., 4096, 2447145635840) = 4096
mremap(0x7fa5e3565000, 208764928, 208769024, MREMAP_MAYMOVE) = 0x7fa5e3565000
pread64(4, "\0\305\7\0\321\376\377q\367\377Q\364\377\371\361\377H\355\377\323\346\377\271\337\377\275\332\377J\326\377\16"..., 4096, 1724118507520) = 4096
pread64(4, "x\377\371p\377_b\377\177W\377\35[\377\223N\377\226[\377&h\377QS\377\203O\377sT\377"..., 4096, 3443764559872) = 4096
pread64(4, "\377\263\371\377\375\355\377\363\6\0\367\356\377\326\21\0\350\353\377?\30\0\242\345\377\375\26\0|\344\377D"..., 4096, 6956990242816) = 4096
pread64(4, "\0\3201\273\0\24)\273\0\34=\273\0\336/\273\0\316/\273\0\3167\273\0\220*\273\0\3569\273"..., 4096, 8609803698176) = 4096
pread64(4, "o\f\257\205\16\377=\20\367\270\21\376\312\22\252R\0234\227\23\242\303\23\234\343\23Z\376\23LI\24"..., 4096, 1755810463744) = 4096
mremap(0x7fa5e3565000, 208769024, 208773120, MREMAP_MAYMOVE) = 0x7fa5e3565000
pread64(4, "\22\0\\\2\0\347\352\377\347\303\377?\250\3776\224\377Ht\377\17W\377\245G\377\5G\377}[\377"..., 4096, 14672424988672) = 4096
mremap(0x7fa5e3565000, 208773120, 208777216, MREMAP_MAYMOVE) = 0x7fa5e3565000
pread64(4, "\255\2\202)#m\22\5N\244F\210\221\20+.\21\5\352\306\344\220\25\3567\250\16\323\2\247P\352"..., 4096, 16981972766720) = 4096
mremap(0x7fa5e3565000, 208777216, 208781312, MREMAP_MAYMOVE) = 0x7fa5e3565000
pread64(4, "M\0\205N\0KO\0\4P\0\221P\0)Q\0\336Q\0\204R\0SS\0\tT\0\371T\0"..., 4096, 833004105728) = 4096
每 30-60 秒就会产生一条新线,所以很少见。有人能告诉我发生了什么吗?我应该等待还是要做什么才能再次访问数据?
答案1
感谢大家的建议。在我运行 fsck 之前,磁盘已经卸载了。在收到 antony_sebastian 的回复建议后,我登录服务器尝试此操作,恢复我的屏幕命令,fsck 正在等待输入。令人惊讶的是,经过 33 天的检查,它完成了对 30TB 磁盘的处理。对所有可修复的问题都回答“是”,数据恢复了,尽管所有内容都移到了“Lost+found”下,并且根目录树文件夹名称丢失了。除此之外,数据完好无损。
谢谢大家的建议和帮助!
答案2
请执行以下步骤,
首先卸载磁盘,
卸载 /dev/磁盘
Linux 在每个文件系统中都维护了超级块的多个冗余副本。我们可以使用超级块元数据的冗余副本来恢复数据。
dumpe2fs /dev/disk |grep 超级块
它将显示我们可以使用的备用超级块。
fsck -y -b blockid /dev/disk
对所有损坏的超级块重复此步骤。即,用备份超级块替换超级块。
挂载磁盘并可以再次使用