先日、Raspberry PiマイクロSDのイメージバックアップは全く同じSDカード
でないと作成出来ない事を書いたのですが、技術的な事を趣味とするものとして
納得がゆかず、いろいろ考えました。Linuxの知識がないままあれこれと試行し、
なんとか解決出来たので、手順を書いておくことにします。(内容はまったくの素人の視点)
□考え方
SDカードのパーティションの使用していない部分を縮小、作成するイメージ
ファイルのサイズが小さくなるようにする。そうする事で、同じ容量のSDカ
ードでもセクター数不足(メーカーにより微妙に違いがある?)で書込めない
原因を取り除く
□準備
・Raspberry Pi のUSBに接続出来るマイクロSDカードリーダーライター
(認識するのか??でしたがすぐに認識してくれ問題なく使えた)
・UNIXが動くPC、Mac Book Proを使用(MacはUNIXマシンですョ)
・Windows PC
□手順:
1)Raspberry Piを起動、USB SDカードリーダーを接続しパーティショ
ンサイズを変更するラズパイのOSが入ったSDカードをセットする。
2)GPartedを起動して、USBカードリーダーのSDカードの
/dev/sda2 の中の/dev/sda7 ext4のサイズを少し小さくする。
後ろにunallocatedの部分が出来るが、/dev/sda2全体のサイズは変
わらない。
*USBカードリーダーの認識により/dev/sdxxは違ってくるかも?
3)パーティションサイズを変更したマイクロSDをMacにセット、ター
ミナルでddコマンドを使ってサイズ変更したext4の 最終セクター+1
までのイメージファイルを作成する。
$ sudo dd if=/div/disk1 of=~/NRPi.img count=28377088 bs=512
この例ではMacではマイクロSDカードがdev/disk1と認識され、
28377077+1セクタまで読み込み、MacのストレージにNRPi.img
として書出す
4)WindowsソフトのWin32DiskImagerを使ってNRPI.imgを新しい
マイクロSDに書込む
こんな感じで16GBより少し容量が小さいラズパイ用のマイクロSDを作成、
タイプやメーカーが異なる16GBマイクロSDに同じ物が書込めるようになりました。
(後はSDカードイメージのバックアップ/リストアはWin32DiskImager
を使うのが簡単かも)
Gpartedやddコマンドを使えば色々なことが可能な事が解りましたが、当初の目的
はクリア出来たので、これでお勉強は終わりです
秋葉原の路地裏店のマイクロSDカードの価格は破壊的
