#前提・こんな人のために
Mac BigSurユーザー。
SDカードやSSD等のDDの進捗が見たい人。
#経緯
はじめまして or お久しぶりです。
スタバでイキるためにApple Silicon搭載のMacBook Airを購入しました。
今まではSurfaceを使用していましたが、この機会にMacBookを日常使いするようにしました。
M1を搭載し、スタイルよし、バッテリーよし(実際めちゃくちゃ持ちます)、性能よし(ツイッターとVSコードとChromeしか触ることないので実感することは少ない)。
さて、本題へ。
ある日Raspberry Pi用のMicroSDをバックアップ・量産するためにDDしたいと思いたった日のことです。
今まではWindows機でDDすることはなく、わざわざLinux機につなげてカードコピーをしていましたが、
MacBookはLinuxではないか!頻度は少ないと云えど思い立ったときに手持ちの端末でサクサクっとSDカードのコピーができるのは便利だ、ということでレッツトライ。
#やったこと
MacBookにカードリーダーをつなげ、SDを突っ込む。
Ubuntu等と同じノリで
sudo df -PH
でコピー元SD、書き込み先SDをそれぞれ見つける
sudo dd if=/dev/コピー元 of=/dev/書き込み先 conv=sync,noerror status=progress bs=4m
と入力しエンターポチッとな
#困ったこと
エラーが帰ってくる。 unknown operand
だと…?
後述するが、MacOSだとstatus=progress
というオプションが存在しないらしい。
#解決方法
Quick: dd with progress indication
に原因及び対策方法が書いてあったのでこの方法をトライ。
PipeViewerというツールを使用する。
brew install pv
でインストールした後に
sudo dd if=/dev/コピー元 | pv -s 8G | sudo dd of=/dev/書き込み先 conv=sync,noerror status=progress bs=4m
(今回は8GBのマイクロSDに書き込みするため)
結果はこんな感じ。プログレスバーが見えるのでstatus=progress
よりもリッチな感じで素晴らしい。
ただし、こんな回りくどいことしなくても気になった際に「control + T」で状況確認すればいいかも…