【Raspberry Pi】SDカードのバックアップ作成、最小イメージ作成~大容量カードにリストア
ラズパイの設定、これで3台目。ぶっちゃけ、最初のインストールは全く同じ作業なので、めんどくさくなってきた。今後も何台か作りそうなので、初期バックアップを取っておいて、手を抜くことにしよう、と思ったら、いろいろ罠があったので、今回はその顛末。
ラズパイバックアップの定番:Win32DiskImagerの罠
ググると、こればっかりですよね。Win32DiskImager。もちろん、これでやってみました。でもね、大きな罠が潜んでました。考えりゃわかるんですけど、イメージバックアップなので、SDカード容量分のバックアップができちゃうのですよ。
- バックアップサイズが大きい!!
- リストアに時間がかかる
- わずかな容量差で、同サイズカードなのにリストアできないときがあるらしい
32GBのSDなら32GB、64GBのSDなら64GBもバックアップしちゃう。ほとんど使ってないのに、ディスク容量も無駄だし、なんといっても、リストアして新たなSDカードつくるのに時間がかかる。時間かけずにサクサクと初期状態までたどり着きたいからやってるのに、これではなんとも…
しかも、カードによって、セクタ数とかは微妙に違うから、ちょっとだけ足らないカードにリストアできないなんて事態もあるみたい。これを押し込むトラブル対処方法なんかが、ネット上にも散見されり。いやいや、そもそも、小さめに作っときゃいいんじゃないの、って思っちまいました。
お試し:8GBのSDカードで最小イメージを作成
それならば、8GBのカードでイメージバックアップして、リストア時に大容量カードに入れたらいいよね、ってことで、8GBカードで起動ディスクを作成し、バックアップを作成しました。容量は一目瞭然、しっかりと、32GBの1/4となりました。
日本語とかVNCとか VS Code とか Python とか入れて初期状態だと、合計:7.0GiB、空き容量:2.9GiB
空きもそこそこあって、初期状態作成用には、8GBカードがちょうどいいサイズですね。安いし少し持っておくといいかもね。
8GBバックアップから32GBカードへのリストア
さて、この8GBバックアップから、大容量SDへリストアすると、どうなるでしょうか? もちろん、8GiBしかリストアしてくれませんので、残りは未割当て状態になっています。そこで、パーティションを拡張して、使えるようにしてやる必要があります。これができなくて、断念してる場合もあるかもしれませんね。
まず、Win32DiskImager で、32GBディスクへリストアして。ラズパイで起動します。その後に、パーティション領域の拡張をfdiskで行います。
領域拡張の手順を詳しく解説してくれてるサイトがこちらにありました。
http://yamada.daiji.ro/blog/?p=382
また、ラズパイのSDカード内のパーティションの詳しい解説ならこちらが参考になります。
fdisk によるパーティション拡張設定 操作手順
sudo fdisk /dev/mmcblk0
fdisk 内でのコマンドは、p: 表示 d: 削除 n: 新規作成 w:書き込み、です。まず、pコマンドで現在のディスクパーティション設定を確認します。
パーティションが二つ。後半の /dev/mmcblk0p2 を拡張します。まずは、d コマンドで 削除します。
その後、先頭を同じにして、最後までの領域を n コマンドで作成します。先頭は、先ほど p コマンドで確認した先頭の数字532480、最後はデフォルトが最後までなので、enter、ext4 signature は変更しないので n を指定します。
p コマンドで変更内容を確認できたら、w コマンドで書き込みします。
これでパーティション設定の変更は完了しましたので、再起動します。
パーティション領域のリサイズ
設定変更しても、領域のリサイズを実行しないと広がりません。再起動後、resize2fs コマンドで領域拡張します。コマンド入力後、数十秒は待たされますので、待ちましょう。
これでめでたく、SDカード容量いっぱいまで領域が拡張されました。
これで、既存のパーティションを拡張できるので、大きいディスクへの載せ替えとかも、この方法でできそうですね。
最小構成のバックアップ作成に挑戦!
こうなると、欲がでます。残りの2.9GiBも削りたくなります。8GBのカードをわざわざ用意したくないって人もいそうだね。ということで、次回は、【大容量SDカードで、ラズパイの最小容量の初期ディスクを作る】ところもやってみましょう。
コメント
0 件のコメント :
コメントを投稿