Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!


Click here to return to the 'Create HFS+ and FAT32 partitions on one external drive.' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Create HFS+ and FAT32 partitions on one external drive.
Authored by: tcurtin on Sep 02, '03 08:00:52AM
I've done a bit more work trying to get this working correctly. I had thought I could create one large DOS partition, and then make a large HFS+ disk image in it to save my Mac files. No dice though, since it appears there is a 5gb filesize limit on the msdos drive. (I get "operation unsupported" errors in disk copy whenever I try to make an image that's larger.)

I'd love any help anyone can provide with that piece.

Also, there's a PC program called freefdisk you can get at http://www.23cc.com/free-fdisk/ which has no partition size limit. So, you can create both partitions, and specify the filesystem for the pc one, on the PC.

Last, but not least, I'm not sure hdid is the best command to use to get your drive identitified. Every time I've used it, it created another /dev/rdisk? file. (Shouldn't it use the /dev/rdisk?s? file that's already there?) And, when I go to eject the firewire drive, it says disk "" can't be ejected because its in use. (I assume its referring to the /dev/rdisk1s5 file that was ignored when hdid created the /dev/rdisk2.) The manpage for hdid says its intended for disk images, not actual disks.

Here's what I get with sudo autodiskmount -adv. (Spits out quite a bit of info about how its trying to mount disks.)

For my main HFS partition (notice it calls hfs.util):

********We have a match for devname = disk0s9!!!**********
foreignProbe('hfs', 'disk0s9', removable=0, writable=1):
'/System/Library/Filesystems/hfs.fs/Contents/Resources/../../hfs.util -p disk0s9 fixed writable'
do_exec(/System/Library/Filesystems/hfs.fs/Contents/Resources/../../hfs.util -p disk0s9 fixed writable)
wait4(pid=11401,&statusp,0,NULL)...
wait4(pid=11401,&statusp,0,NULL) => 11401
foreignProbe(...) => -9
foreignUUID('hfs', 'disk0s9'):
'/System/Library/Filesystems/hfs.fs/Contents/Resources/../../hfs.util -k disk0s9'
do_exec(/System/Library/Filesystems/hfs.fs/Contents/Resources/../../hfs.util -k disk0s9)
wait4(pid=11402,&statusp,0,NULL)...
wait4(pid=11402,&statusp,0,NULL) => 11402
foreignUUID(...) => -4

For my firewire msdos partition (notice msdos.util):
********We have a match for devname = disk1s1!!!**********
foreignProbe('msdos', 'disk1s1', removable=0, writable=1):
'/System/Library/Filesystems/msdos.fs/Contents/Resources/../../msdos.util -p disk1s1 fixed writable'
do_exec(/System/Library/Filesystems/msdos.fs/Contents/Resources/../../msdos.util -p disk1s1 fixed writable)
wait4(pid=11403,&statusp,0,NULL)...
wait4(pid=11403,&statusp,0,NULL) => 11403
foreignProbe(...) => -1
foreignUUID('msdos', 'disk1s1'):
'/System/Library/Filesystems/msdos.fs/Contents/Resources/../../msdos.util -k disk1s1'
do_exec(/System/Library/Filesystems/msdos.fs/Contents/Resources/../../msdos.util -k disk1s1)
wait4(pid=11404,&statusp,0,NULL)...
wait4(pid=11404,&statusp,0,NULL) => 11404
foreignUUID(...) => -6

Now for my firewire hfs partition (notice it tries, and fails, to use msdos.util!):
********We have a match for devname = disk1s5!!!**********
foreignProbe('msdos', 'disk1s5', removable=0, writable=1):
'/System/Library/Filesystems/msdos.fs/Contents/Resources/../../msdos.util -p disk1s5 fixed writable'
do_exec(/System/Library/Filesystems/msdos.fs/Contents/Resources/../../msdos.util -p disk1s5 fixed writable)
wait4(pid=11405,&statusp,0,NULL)...
wait4(pid=11405,&statusp,0,NULL) => 11405
foreignProbe(...) => -2
Volume is bad
LookupWholeDiskForThisPartition('disk1s5') => 'disk1'

So, the command sudo /System/Library/Filesystems/hfs.fs/Contents/Resources/../../hfs.util -m disk1s5 /Volumes/ibookbak fixed writable nosuid dev actually does what you'd expect and lets you access the drive using /Volumes/ibookbak. But, doesn't show on desktop... (And doesn't unmount very cleanly, either.)

I don't really know what I'm doing here, I'm just muddling my way through. It seems like we need to get autodiskmount to know that the second partition should get hfs.util treatment, but I have no idea how to tell it so. Any help? I'll keep working...

---
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety."
- Benjamin Franklin

[ Reply to This | # ]