无法挂载HFS +驱动器,坏的超级块?

我的Macbook(Snow Leopard OS)给了我死亡的彩虹轮,所以我尝试启动进入安全模式并修复磁盘,没有运气。 因此我决定将驱动器拔出并将其插入我的Ubuntu 12.04桌面,使用SATA转USB电缆恢复一些数据,然后重新安装操作系统。 我在尝试安装驱动器时遇到了很多麻烦。 我已经安装了hfsplus hfsprogs和hfsutils并运行以下命令。

sudo mount -t hfsplus /dev/sdd1 /mnt/"AppleMount" 

这给了我这个错误。

 wrong fs type, bad option, bad superblock on /dev/sdd1, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so 

跑dmesg告诉我这个。

 [39666.815423] end_request: critical target error, dev sdd, sector 536 [39666.815429] Buffer I/O error on device sdd1, logical block 62 [39670.526393] sd 6:0:0:0: [sdd] Unhandled sense code [39670.526397] sd 6:0:0:0: [sdd] Result: hostbyte=invalid driverbyte=DRIVER_SENSE [39670.526402] sd 6:0:0:0: [sdd] Sense Key : Medium Error [current] [39670.526407] sd 6:0:0:0: [sdd] Add. Sense: Unrecovered read error [39670.526412] sd 6:0:0:0: [sdd] CDB: Read(10): 28 00 00 00 02 18 00 00 08 00 [39670.526422] end_request: critical target error, dev sdd, sector 536 [39670.526427] Buffer I/O error on device sdd1, logical block 62 [39763.562415] hfs: unable to find HFS+ superblock 

所以我觉得我已经陷入了困境。 谁能引导我朝着正确的方向前进? 谢谢!

只是为了记录,这是我发现安装用dd创建的Mac磁盘映像的方式。

1)获取开始和扇区大小

 fdisk -l /path/to/image.dd 

你得到X作为开始,Y得到大小。

2)安装分区

 mount -t hfsplus -o ro,offset=$((512*X)),sizelimit=$((512*Y)) /path/to/image.dd /mnt/macMount 

这是我发现的混合解决方案。 希望这会对某人有所帮助。

复制HFS +分区后我遇到了同样的问题,所以我可能会分享我的解决方案。

我通过从Mac Os Disk Utility应用程序运行磁盘修复来解决它。 您可以从Macos安装或恢复DVD运行它。

不是直接解决方案,但如果您已经破坏了HFS +分区,您可能需要查看hfs + rescue 。 即使分区损坏,它也可以让你获取文件。 它甚至可以在ubuntu上运行得很好!

与photorec不同,它还提供文件名和目录结构。

作为参考,一些不起作用的东西。

(我在Ubuntu 14.04.3上)

如果我用sudo gparted打开磁盘,我会收到以下消息:

 The journal is not empty. Parted must replay the transactions before opening the file system. This will modify the file system. 

我可以取消或修复。 我点击了修复,然后通过指定起点和大小尝试安装:

mount -v -t hfsplus -o ro,offset =,sizelimit = / dev / sdd2 / media / macdrive

无法挂载HFS +驱动器,坏的超级块?

更频繁的是,此错误意味着您尝试安装整个驱动器而不仅仅是HFS +分区。

运行此命令以显示应安装的分区:

 sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL 

示例输出:sda

 ├─sda1 vfat 300M EFI | └─sda2 hfsplus 100G VolumeName 

所以不要挂载sda,而是在该示例中挂载sda2。

如果您正在查看如何写入HFS +分区,我在此处发布了一个指南:

指南