linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [HFS+] large drive mounting issue
@ 2013-01-24 10:48 Paul-Kenji Cahier
  2013-01-24 11:06 ` Vyacheslav Dubeyko
  2013-01-24 11:18 ` Vyacheslav Dubeyko
  0 siblings, 2 replies; 3+ messages in thread
From: Paul-Kenji Cahier @ 2013-01-24 10:48 UTC (permalink / raw)
  To: linux-fsdevel

Hi all,

I am running 3.2.5-gg987 and I am experiencing a problem mounting my
3TB HFS+ formatted drive.
The drive has been used on a mac (and formatted there) for a long
time. I just need RO access to it, so journaling shouldn't be an
issue.

Regardless of my mount attempts it errors with:
[681648.160023] hfs: invalid secondary volume header
[681648.160026] hfs: unable to find HFS+ superblock


Here's the drive info:
$ sudo parted /dev/sdb unit B print
Model: ATA WDC WD30EZRX-00D (scsi)
Disk /dev/sdb: 3000592982016B
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number Start End Size File system Name Flags
1 20480B 209735679B 209715200B fat32 EFI System Partition boot
2 209735680B 3000458743807B 3000249008128B hfs+
3TB-Backup


Things I've tried:
Direct mount:
sudo mount -t hfsplus /dev/sdb2 /testmnt

Offset mount:
sudo mount -t hfsplus -o ro,loop,offset=209735680 /dev/sdb /testmnt

Manual loop device offset mount:
sudo losetup -f /dev/sdb --offset 209735680 --sizelimit 3000249008128 --show
sudo mount -t hfsplus -o loop,force,ro /dev/loop0 /testmnt

Manual loop device direct mount:
sudo losetup /dev/sdb2 --offset 0 --sizelimit 3000249008128 --show
sudo mount -t hfsplus -o loop,force,ro /dev/loop0 /testmnt


None of this works.
For what it's worth, the block headers are per HFS+ specification in
the right place:

$ sudo dd if=/dev/sdb2 bs=1024 skip=1 count=1|hd|head
00000000 48 2b 00 04 80 00 21 00 48 46 53 4a 00 00 15 d6 |H+....!.HFSJ....|
00000010 cd 0e 7c 22 cd 0f 0d 10 00 00 00 00 cd 0e 6e 12 |..|"..........n.|

$ sudo dd if=/dev/sdb2 bs=1024 skip=$((3000249008128/1024-1)) count=1|hd|head
00000000 48 2b 00 04 80 00 21 00 31 30 2e 30 00 00 15 d6 |H+....!.10.0....|
00000010 cd 0e 7c 22 cd 0e 6e 12 00 00 00 00 cd 0e 6e 12 |..|"..n.......n.|

Thanks,

-fcpk/Paul-Kenji

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [HFS+] large drive mounting issue
  2013-01-24 10:48 [HFS+] large drive mounting issue Paul-Kenji Cahier
@ 2013-01-24 11:06 ` Vyacheslav Dubeyko
  2013-01-24 11:18 ` Vyacheslav Dubeyko
  1 sibling, 0 replies; 3+ messages in thread
From: Vyacheslav Dubeyko @ 2013-01-24 11:06 UTC (permalink / raw)
  To: Paul-Kenji Cahier; +Cc: linux-fsdevel

Hi Paul-Kenji,

On Thu, 2013-01-24 at 10:48 +0000, Paul-Kenji Cahier wrote:
> Hi all,
> 
> I am running 3.2.5-gg987 and I am experiencing a problem mounting my
> 3TB HFS+ formatted drive.
> The drive has been used on a mac (and formatted there) for a long
> time. I just need RO access to it, so journaling shouldn't be an
> issue.
> 
> Regardless of my mount attempts it errors with:
> [681648.160023] hfs: invalid secondary volume header
> [681648.160026] hfs: unable to find HFS+ superblock
> 
> 
> Here's the drive info:
> $ sudo parted /dev/sdb unit B print
> Model: ATA WDC WD30EZRX-00D (scsi)
> Disk /dev/sdb: 3000592982016B
> Sector size (logical/physical): 512B/4096B
> Partition Table: gpt
> 
> Number Start End Size File system Name Flags
> 1 20480B 209735679B 209715200B fat32 EFI System Partition boot
> 2 209735680B 3000458743807B 3000249008128B hfs+
> 3TB-Backup
> 
> 
> Things I've tried:
> Direct mount:
> sudo mount -t hfsplus /dev/sdb2 /testmnt
> 
> Offset mount:
> sudo mount -t hfsplus -o ro,loop,offset=209735680 /dev/sdb /testmnt
> 
> Manual loop device offset mount:
> sudo losetup -f /dev/sdb --offset 209735680 --sizelimit 3000249008128 --show
> sudo mount -t hfsplus -o loop,force,ro /dev/loop0 /testmnt
> 
> Manual loop device direct mount:
> sudo losetup /dev/sdb2 --offset 0 --sizelimit 3000249008128 --show
> sudo mount -t hfsplus -o loop,force,ro /dev/loop0 /testmnt
> 
> 
> None of this works.
> For what it's worth, the block headers are per HFS+ specification in
> the right place:
> 
> $ sudo dd if=/dev/sdb2 bs=1024 skip=1 count=1|hd|head
> 00000000 48 2b 00 04 80 00 21 00 48 46 53 4a 00 00 15 d6 |H+....!.HFSJ....|
> 00000010 cd 0e 7c 22 cd 0f 0d 10 00 00 00 00 cd 0e 6e 12 |..|"..........n.|
> 
> $ sudo dd if=/dev/sdb2 bs=1024 skip=$((3000249008128/1024-1)) count=1|hd|head
> 00000000 48 2b 00 04 80 00 21 00 31 30 2e 30 00 00 15 d6 |H+....!.10.0....|
> 00000010 cd 0e 7c 22 cd 0e 6e 12 00 00 00 00 cd 0e 6e 12 |..|"..n.......n.|
> 

Thank you for detailed report.

I think that it is a not valid calculation of secondary volume header
placement in driver code. I will check this presupposition.

Could you enable DBG masks (please, see hfsplus_fs.h), recompile kernel
and try to mount again? Could you share debug output in the system log
with enabled DBG masks?

Thanks,
Vyacheslav Dubeyko. 

> Thanks,
> 
> -fcpk/Paul-Kenji
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [HFS+] large drive mounting issue
  2013-01-24 10:48 [HFS+] large drive mounting issue Paul-Kenji Cahier
  2013-01-24 11:06 ` Vyacheslav Dubeyko
@ 2013-01-24 11:18 ` Vyacheslav Dubeyko
  1 sibling, 0 replies; 3+ messages in thread
From: Vyacheslav Dubeyko @ 2013-01-24 11:18 UTC (permalink / raw)
  To: Paul-Kenji Cahier; +Cc: linux-fsdevel

On Thu, 2013-01-24 at 10:48 +0000, Paul-Kenji Cahier wrote:
> Hi all,
> 
> I am running 3.2.5-gg987 and I am experiencing a problem mounting my
> 3TB HFS+ formatted drive.
> The drive has been used on a mac (and formatted there) for a long
> time. I just need RO access to it, so journaling shouldn't be an
> issue.
> 

By the way, what version of Mac OS X do you use? And how do you format
this drive under Mac OS X?

Thanks,
Vyacheslav Dubeyko.


> Regardless of my mount attempts it errors with:
> [681648.160023] hfs: invalid secondary volume header
> [681648.160026] hfs: unable to find HFS+ superblock
> 
> 
> Here's the drive info:
> $ sudo parted /dev/sdb unit B print
> Model: ATA WDC WD30EZRX-00D (scsi)
> Disk /dev/sdb: 3000592982016B
> Sector size (logical/physical): 512B/4096B
> Partition Table: gpt
> 
> Number Start End Size File system Name Flags
> 1 20480B 209735679B 209715200B fat32 EFI System Partition boot
> 2 209735680B 3000458743807B 3000249008128B hfs+
> 3TB-Backup
> 
> 
> Things I've tried:
> Direct mount:
> sudo mount -t hfsplus /dev/sdb2 /testmnt
> 
> Offset mount:
> sudo mount -t hfsplus -o ro,loop,offset=209735680 /dev/sdb /testmnt
> 
> Manual loop device offset mount:
> sudo losetup -f /dev/sdb --offset 209735680 --sizelimit 3000249008128 --show
> sudo mount -t hfsplus -o loop,force,ro /dev/loop0 /testmnt
> 
> Manual loop device direct mount:
> sudo losetup /dev/sdb2 --offset 0 --sizelimit 3000249008128 --show
> sudo mount -t hfsplus -o loop,force,ro /dev/loop0 /testmnt
> 
> 
> None of this works.
> For what it's worth, the block headers are per HFS+ specification in
> the right place:
> 
> $ sudo dd if=/dev/sdb2 bs=1024 skip=1 count=1|hd|head
> 00000000 48 2b 00 04 80 00 21 00 48 46 53 4a 00 00 15 d6 |H+....!.HFSJ....|
> 00000010 cd 0e 7c 22 cd 0f 0d 10 00 00 00 00 cd 0e 6e 12 |..|"..........n.|
> 
> $ sudo dd if=/dev/sdb2 bs=1024 skip=$((3000249008128/1024-1)) count=1|hd|head
> 00000000 48 2b 00 04 80 00 21 00 31 30 2e 30 00 00 15 d6 |H+....!.10.0....|
> 00000010 cd 0e 7c 22 cd 0e 6e 12 00 00 00 00 cd 0e 6e 12 |..|"..n.......n.|
> 
> Thanks,
> 
> -fcpk/Paul-Kenji
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-01-24 11:18 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-24 10:48 [HFS+] large drive mounting issue Paul-Kenji Cahier
2013-01-24 11:06 ` Vyacheslav Dubeyko
2013-01-24 11:18 ` Vyacheslav Dubeyko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).