I have a problem mounting some hfsplus drives. I just need them mounted readonly. (disabling journal is not an option) I did a lot of research and found out that due to changes from kernel version 2.6.37 to 2.6.38 the problem started.
Have a look at this link at bugs.launchpad.net.
So I tested it with Linux kernel version 2.6.37 and lower and it worked fine as it should.
Versions above including my version which is 3.2.0-54-generic(ubuntu 12.04) did not work fine with mounting hfsplus images and disks. So I need the hfsplus module from a working version like 2.6.31-14-generic from ubuntu 9.
I use these commands in this case with a HFS+ DD image. But I did this with other hfsplus physical drives and other images. They all work with kernel 2.6.37 and lower but not with newer versions:
sudo losetup -d /dev/loop0
sudo losetup /dev/loop0 -o $((512*409640)) /folder/iMac_21.dd
sudo mount -t hfsplus /dev/loop0 /mnt/hfs
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
dmesg | tail
[84980.380254] hfs: invalid secondary volume header
I have to add this information to "proof" that the problem is after kernel 2.6.38. Have a look at this. That is a NTFS und HFS+ driver from Paragon.
"What's new in Paragon NTFS & HFS+ for Linux 8.5:
Support for modern Linux Kernels (up to 2.6.38);"
paragon-software.com/home/ntfs-linux-per/features.html
To fix the problem I just copied /lib/modules/2.6.27/kernel/fs/hfsplus.ko
to my current 3.2.0-54-generic kernel. But that did not work. How do I get the working hfsplus part into my current 3.2.0-54-generic kernel ubuntu 12.04 linux? Or how to fix my kernel to work just like in 2.6.37 ?
The best hint I did see was this one.