![ext4 文件系统被错误地检测为 jmicron_raid_member](https://linux22.com/image/1113889/ext4%20%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E8%A2%AB%E9%94%99%E8%AF%AF%E5%9C%B0%E6%A3%80%E6%B5%8B%E4%B8%BA%20jmicron_raid_member.png)
我在 SSD 磁盘上安装了 Ubuntu 12.04,在内核升级和重启后无法启动。其他可能的原因是我清理了一些dpkg -r
旧的未使用内核(我从 中手动选择的列表dpkg -l | grep linux-
)。
以下是我从启动实时系统(即启动另一个操作系统)并尝试访问磁盘所能收集到的信息。
该磁盘有两个分区,第一个分区是小分区 (sdb1),包含 /boot ext2 文件系统,第二个分区是 LUKS 加密的,因此我使用 打开了它cryptsetup luksOpen /dev/sdb5 ssd
。新设备是 LVM2 pv,因此我使用 和 使其可用vgscan
。现在我有一个 LVM2 vg,包含两个名为和vgchange -a y
的逻辑卷。它包含我的文件系统。foo-root
foo-swap
foo-root
现在奇怪的事情开始发生了。我尝试挂载文件系统,结果mount /dev/mapper/foo-root /mnt
返回:
安装:未知文件系统类型“jmicron_raid_member”
因此我尝试指定文件系统类型mount -t ext4 /dev/mapper/foo-root /mnt
,并且成功了。我很高兴能够访问我的数据,但由于我仍然无法启动磁盘,所以我卸载了文件系统并继续探索。
我运行fsck.ext4 -f /dev/mapper/foo-root
没有错误。
此时,问题似乎在于文件系统类型报告不正确。我运行blkid -p /dev/mapper/foo-root
并返回:
/dev/mapper/foo-root:版本=“55.72”类型=“jmicron_raid_member”用法=“raid”
健康的 ext4 文件系统将会恢复UUID="along-uuid" TYPE="ext4"
。
我求助于谷歌。似乎 dmraid 可以使用来删除错误的 RAID 标头,dmraid -Er
但不起作用。还dmraid -r
返回:
没有 raid 磁盘
为了保险起见,也为了有点已经修好了的感觉,我尝试了,dmraid -x
但dmraid -Er /dev/mapper/foo-root
都没有任何帮助。
在访问文件系统时,我尝试了各种方法,例如进入文件系统并重建 initrd、将 grub 重写为 MBR(尝试了 sdb 和 sdb1),以及使 sdb1 可启动等等。似乎没有什么方法可以让磁盘再次可启动。
我别无选择。任何帮助我都感激不尽。
更新:从@psusi 评论运行命令:
0000000: 4a4d 4837 780a 4744 5851 7033 4d70 5136 JMH7x.GDXQp3MpQ6
0000010: 6c71 5056 4932 4f31 6c49 7155 7646 6359 lqPVI2O1lIqUvFcY
0000020: 414b 382f 7054 766f 5a32 5a57 754c 585a AK8/pTvoZ2ZWuLXZ
0000030: 6e59 7746 5174 4b53 5656 686e 6230 4e4a nYwFQtKSVVhnb0NJ
0000040: 4646 685a 506b 4155 3936 7335 4d69 2f65 FFhZPkAU96s5Mi/e
0000050: 4971 0a67 5346 6a59 4b43 4f2f 536f 5a5a Iq.gSFjYKCO/SoZZ
0000060: 4855 3838 7231 2b6c 4137 4558 326c 704d HU88r1+lA7EX2lpM
0000070: 6e6e 6a74 5463 4d63 2b6c 4959 3131 334c nnjtTcMc+lIY113L
0000080: 6a6f 4b69 4346 4f56 4a42 3635 4641 4675 joKiCFOVJB65FAFu
0000090: 4457 626d 312b 5658 4c4b 4f64 7458 4a0a DWbm1+VXLKOdtXJ.
00000a0: 4e5a 6136 6841 6b6a 5573 6553 6176 6e30 NZa6hAkjUseSavn0
00000b0: 735a 2b7a 5637 6f71 6561 564f 3566 6c7a sZ+zV7oqeaVO5flz
00000c0: 3655 3458 6855 6373 4b6c 4d70 784a 494c 6U4XhUcsKlMpxJIL
00000d0: 612f 3152 6a46 6157 3563 3966 4e6b 4f31 a/1RjFaW5c9fNkO1
00000e0: 4150 6331 6f32 3368 6131 6a62 0a66 6653 APc1o23ha1jb.ffS
00000f0: 2f61 626e 474e 6b66 4559 787a 6e31 4e63 /abnGNkfEYxzn1Nc
0000100: 3157 7139 6b61 526a 6255 3339 4a69 314b 1Wq9kaRjbU39Ji1K
0000110: 3632 5765 6e51 4b6c 7567 3373 5742 4148 62WenQKlug3sWBAH
0000120: 7278 5854 5165 4634 346e 6534 3143 4d33 rxXTQeF44ne41CM3
0000130: 637a 592b 5668 3870 2f0a 4373 7562 5132 czY+Vh8p/.CsubQ2
0000140: 6847 3675 6470 3455 3850 5875 7132 5631 hG6udp4U8PXuq2V1
0000150: 465a 324b 7851 4842 5975 4e75 4354 6a49 FZ2KxQHBYuNuCTjI
0000160: 4866 474b 364f 342b 4851 3036 454a 4a4e HfGK6O4+HQ06EJJN
0000170: 4578 5541 6b4b 546a 5070 7a53 5431 4432 ExUAkKTjPpzST1D2
0000180: 6e4b 506e 6730 0a37 5449 6d44 5478 4462 nKPng0.7TImDTxDb
0000190: 7879 514d 6e30 7761 7a5a 2f45 324a 7047 xyQMn0wazZ/E2JpG
00001a0: 4563 7337 6a6e 4c63 4138 6574 4356 7a4a Ecs7jnLcA8etCVzJ
00001b0: 766e 454c 586e 6957 7868 4639 5038 4132 vnELXniWxhF9P8A2
00001c0: 645a 2f66 3277 7556 794f 344a 3731 4e59 dZ/f2wuVyO4J71NY
00001d0: 5357 6c0a 696b 7364 6a59 7665 7356 4b6f SWl.iksdjYvesVKo
00001e0: 572b 376e 314f 6174 752b 6737 4c59 5732 W+7n1Oatu+g7LYW2
00001f0: 744e 574d 5a6a 765a 3459 5933 7756 696a tNWMZjvZ4YY3wVij
答案1
由于某种原因,您似乎在卷末尾有一个 jmicron raid 签名。您可以使用以下命令将其擦除:
sudo dd if=/dev/zero of=/dev/mapper/foo-root bs=512 seek=$((`sudo blockdev --getsz /dev/mapper/foo-root` - 1))
之后您应该对文件系统进行 fsck,以确保没有发生任何不好的事情,并且一如既往地进行备份。
答案2
我的邮件存档分区也遇到了类似的情况。
我在以下文件中输入了以下行/etc/fstab
:
/dev/mapper/ubuntu--vg-mail /mnt/max/mail/ auto errors=remount-ro 0 1
mount 命令返回了相同的错误:
root@luke:~# mount /mnt/max/mail/
mount: /mnt/max/mail: unknown filesystem type 'jmicron_raid_member'.
/etc/fstab
我解决了用这个改变线路的问题:
/dev/mapper/ubuntu--vg-mail /mnt/max/mail/ ext4 errors=remount-ro 0 1
注意ext4
替换auto
。