MacOS XでUSBハードディスクコピーをddコマンド実行
参考は以下。
http://d.hatena.ne.jp/Syunpei/20110131/1296453936
http://yamaqblog.tokyo/?p=9138
コピー元のディスクとコピー先のディスクをUSBポートに挿す。コピー先のディスクが新品などMacで認識できない場合は、
セットしたディスクは、このコンピュータで読み取れないディスクでした。
とダイアログが出るので、「無視」を決め込む。
diskutil listで現在のディスク情報を表示する。diskutil unmountしたらパーティションがあるんなら代わりに"unmountDisk"使えと言われるので、それを実行。diskutil unmountDiskを実行するとマウント時に表示されていたアイコンも消える。なお、MacOS XのddはSIGINFO(CTRL+T)を送るごとにどこまでコピーしたかを表示してくれる(GNUのddはSIGUSR1)。
$ stty -a speed 9600 baud; 24 rows; 80 columns; lflags: icanon isig iexten echo echoe -echok echoke -echonl echoctl -echoprt -altwerase -noflsh -tostop -flusho pendin -nokerninfo -extproc iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel iutf8 -ignbrk brkint -inpck -ignpar -parmrk oflags: opost onlcr -oxtabs -onocr -onlret cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow -dtrflow -mdmbuf cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>; eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V; min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T; stop = ^S; susp = ^Z; time = 0; werase = ^W; $ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *1.0 TB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 999.3 GB disk0s2 3: Apple_Boot Recovery HD 650.0 MB disk0s3 /dev/disk1 #: TYPE NAME SIZE IDENTIFIER 0: Apple_partition_scheme *16.0 MB disk1 1: Apple_partition_map 32.3 KB disk1s1 2: Apple_HFS Flash Player 15.9 MB disk1s2 /dev/disk2 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *1.0 TB disk2 1: EFI EFI 209.7 MB disk2s1 2: Apple_HFS Macintosh HD 837.3 GB disk2s2 3: Apple_Boot Recovery HD 650.0 MB disk2s3 4: Microsoft Basic Data BOOTCAMP 162.0 GB disk2s4 /dev/disk3 #: TYPE NAME SIZE IDENTIFIER 0: *1.0 TB disk3 $ diskutil unmount /dev/disk2 disk2 was already unmounted or it has a partitioning scheme so use "diskutil unmountDisk" instead $ diskutil unmountDisk /dev/disk2 Unmount of all volumes on disk2 was successful $ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *1.0 TB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 999.3 GB disk0s2 3: Apple_Boot Recovery HD 650.0 MB disk0s3 /dev/disk1 #: TYPE NAME SIZE IDENTIFIER 0: Apple_partition_scheme *16.0 MB disk1 1: Apple_partition_map 32.3 KB disk1s1 2: Apple_HFS Flash Player 15.9 MB disk1s2 /dev/disk2 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *1.0 TB disk2 1: EFI EFI 209.7 MB disk2s1 2: Apple_HFS Macintosh HD 837.3 GB disk2s2 3: Apple_Boot Recovery HD 650.0 MB disk2s3 4: Microsoft Basic Data BOOTCAMP 162.0 GB disk2s4 /dev/disk3 #: TYPE NAME SIZE IDENTIFIER 0: *1.0 TB disk3 $ sudo dd if=/dev/disk2 of=/dev/disk3 bs=1m WARNING: Improper use of the sudo command could lead to data loss or the deletion of important system files. Please double-check your typing when using sudo. Type "man sudo" for more information. To proceed, enter your password, or type Ctrl-C to abort. Password: ここでCTRL+Tすると load: 0.82 cmd: dd 2896 running 0.05u 235.74s 12652+0 records in 12651+0 records out 13265534976 bytes transferred in 1763.032287 secs (7524272 bytes/sec) 同じようにここでCTRL+Tすると load: 0.87 cmd: dd 2896 uninterruptible 0.05u 252.49s 13522+0 records in 13522+0 records out 14178844672 bytes transferred in 1887.433072 secs (7512237 bytes/sec) と気になった時点で進捗を確認できる。
終了後、マウント解除は以下のとおり。
$ diskutil eject /dev/disk2 $ diskutil eject /dev/disk3