如何识别文件系统/分区类型

如何识别文件系统/分区类型

在安装 mtpfs 系统后,我的硬盘驱动器在某个时候损坏了。我想问如何解决这个问题,但我对分区和文件系统类型没有信心。

我的操作系统是新的 Fedora Core 23,但分区最初是在 FC 20 下创建的,很可能是默认的。

cat /proc/version
Linux version 4.2.3-300.fc23.x86_64            
[email protected]) 
(gcc version 5.1.1 20150618 (Red Hat 5.1.1-4) 
(GCC) ) #1 SMP Mon Oct 5 15:42:54 UTC 2015

fdisk 程序报告以下分区。正如人们可能想象的那样,我对 /dev/sdb3 最感兴趣,但它是损坏最严重的。我不知道为什么/dev/sdb2报告“Microsoft基本数据”,但至少它可以挂载和读取,而/dev/sdb3分区无法挂载。

sudo fdisk /dev/sdb
Welcome to fdisk (util-linux 2.27).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p
Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 59CA4127-4BEE-40F4-A514-9DA368C81665

Device       Start        End    Sectors   Size Type
/dev/sdb1     2048     411647     409600   200M EFI System
/dev/sdb2   411648    1435647    1024000   500M Microsoft basic data
/dev/sdb3  1435648 1953523711 1952088064 930.8G Linux filesystem

sudo mount /dev/sdb3 /mnt/sdb3
mount: /dev/sdb3 is write-protected, mounting read-only
mount: wrong fs type, bad option, bad superblock on /dev/sdb3,
missing codepage or helper program, or other error

In some cases useful info is found in syslog - try
dmesg | tail or so.

我没有看到任何与安装、分区相关的内容,也没有在 dmesg 或通过journalctl 看到的systemd 日志中看到任何相关内容。

显然,找不到超级块:

sudo dumpe2fs /dev/sdb3
dumpe2fs 1.42.13 (17-May-2015)
dumpe2fs: Bad magic number in super-block while trying to open /dev/sdb3
Couldn't find valid filesystem superblock.

我的问题是: /mnt/sdb3 到底是什么文件系统?我怎样才能找到(是否有一个神奇的数字或引人注目的东西我可以找到并转储到某个地方)?

一旦我知道了这一点,我可能可以相应地更改分区类型。如果我可以的话,TestDisk 实用程序会更有帮助知道文件系统是什么,例如 dos 分区方案,例如 /dev/sdb3 是 ext4。

更新:我想我在设置时将其加密了。我在十六进制编辑器中查看了 /dev/sdb3 分区,并通过字符串传输了其中的很大一部分,但没有识别任何内容。有很多看起来像是重复的模式。另外,我的旧 grub.cfg 有以下几行:

linuxefi /vmlinuz-3.19.8-100.fc20.x86_64 root=/dev/mapper/fedora_ralph-root ro rd.lvm.lv=fedora_ralphdfl/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=fedora_ralphdfl/root rd.luks.uuid=luks-a0d2613e-ce2a-4a6b-96cf-b999b3a36ab8  rhgb quiet LANG=en_US.UTF-8

不幸的是,它没有被识别为加密驱动器: cryptsetup -v luksDump /dev/sdb3 设备 /dev/sdb3 不是有效的 LUKS 设备。命令失败,代码 22:参数无效

不过,获取旧密码是可行的。此时,我最好将其带到数据恢复公司吗?我可以承受失去其中的大部分内容,但有一些关键文件我真的很想拿回来。

先感谢您。

答案1

如果文件系统的第一个扇区未损坏,则从file命令。传递该-s选项,以便它查看设备内容,而不仅仅是说“它是一个设备”。

file -s /dev/sdb3

所使用的数据库file与挂载时内核所使用的数据库不同,因此可能会发生file无法识别内核所识别的文件系统的情况,反之亦然,但在常见情况下file应该识别内核支持的文件系统。

如果这没有帮助,因为它是一个file无法识别的奇异文件系统或卷类型,请尝试head -c 1024k /dev/sdb3 | strings | less看看是否会产生线索。

如果您无法弄清楚,请尝试取证工具,例如测试盘。您不需要知道要运行的文件系统的类型:您可以使用它来探索损坏的磁盘,这就是要点。如果您怀疑分区表损坏,TestDisk也可以尝试猜测。

答案2

默认情况下,Fedora 安装程序会创建 LVM 组,称为“fedora”或其他名称。尝试:

# lvdisplay

或者

# ls /dev/mapper/

还有,你有lvm,不能直接挂载分区

答案3

“fsck”也许有帮助。例如:

[root@master dtb]# fsck /dev/sdb1
fsck,come from  util-linux 2.20.1
e2fsck 1.42.9 (4-Feb-2014)
/dev/sdb1: clean, 11/2560 files, 1445/10240 blocks
[root@master dtb]# fsck /dev/sdb5
fsck,come from  util-linux 2.20.1
If you wish to check the consistency of an XFS filesystem or
repair a damaged filesystem, see xfs_check(8) and xfs_repair(8).

它会显示硬盘驱动器正在使用哪个文件系统系列。

相关内容