On Jun 18, 2012, at 6:56 AM, Susan Alston wrote:

> We used Parallels last year and had scads of recurring permissions issues 
> running it under a student account with the Esko/Artios software we were 
> using.

Maybe it's a rabbit hole but I'd go down some way to finding a resolution to 
this because I find EFI/BIOS, GPT/MBR dual boot to be flakey and dangerous. You 
further expose the hardware to malware, and while there are vulnerabilities 
being found allowing privilege escalation beyond the VM environment, you're 
still way way better off from a malware and routine maintenance perspective to 
try and make VM work.

>    What is dd? 

# man dd

A very old program that allows you to sector copy input to output. Input can be 
a whole disk, partition, or file. Output can be a whole disk, partition, or 
file. So the usage to image a whole drive (which includes boot sector, MBR, 
GPT, and all partitions) is 

dd if=<device> of=<file>

1. The file clearly needs to go on another volume.
2. The default block size is 512 bytes. The performance of the operation is 
slow as a result. The difference on a mobile Scorpio Black between bs=512 and 
bs=1m is:

bs=512 yields 3.5MB/s
bs=4k yields 23MB/s
bs=16k yields 74MB/s
bs=64k yields 112MB/s
bs=128k yields 123MB/s
bs=1m yields  124MB/s

So why not just use block size 1m? Well, the number of sectors on the disk 
won't add up to a number exactly divisible by 1m, or even 128k probably. So 
that last block isn't copied into the image. If that last block contains just 
the backup GPT, no problem, that's easily repaired. If the last block not 
copied also contains the tail end of one of your volumes, typically containing 
file system structure like NTFS does, not good.

If you start out with a partitioned source disk where the last partition ends 
safely before the end of the disk, i.e. 1MB worth of sectors before the end, 
then you can safety use bs=128k to create the image and write the image.

3. No matter what, you have to repair the backup GPT, because it is located 
relative to the last sector on the disk. And the sector count for identical 
model/size drives is always different. So that you have to manually repair on 
every disk after imaging. It's not catastrophic if you don't, the primary GPT 
will be intact and found, EFI will find and use it and the error in the backup 
GPT is unlikely to ever be reported. But for best practices, it should be 
repaired.

I use GPT fdisk (a.k.a gdisk), from Source Forge. There is a Mac OS X binary. 
It can be run on a live disk, and it will immediately find the problem and 
offer to repair it. It does NOT alter the GPT until you tell it to write out 
the repaired one (which is in memory only).



> It can be used to image the Mac and the Windows partition both and then 
> install those 2 partition images on another machine?

Yes.

Create example:
dd if=/dev/rdisk0 of=~/masterMacWindows.img bs=128k

Apply image to disk example:
dd if=~/masterMacWindows.img of=/dev/rdisk0 bs=128k

If you use a linux Live CD to boot, the command works fine too, but units are 
capitalized, so 128K. File systems are irrelevant.


>   What does "Naturally when you start using dd, none of the volumes on that 
> disk can be mounted or the dd operation is invalid" mean?

You cannot dd image a disk that contains a file system that is online because 
data on it is constantly changing. Sector copies of online file systems will 
invariably be utterly broken, and not repairable. 

So you have to boot from a separate volume, such that the source disk does not 
contain any online (mounted) file systems.


Chris Murphy
_______________________________________________
MacOSX-admin mailing list
[email protected]
http://www.omnigroup.com/mailman/listinfo/macosx-admin

Reply via email to