今まではSDカードを抜いてmacでSDカードの中身を.img形式に取得してきたのだが、時間が掛かることと、バックアップを書き戻す先のSDカードは容量がオリジナルと完全に等しいか大きいものとする必要があった。各所に書かれている通り16GBのSDカードと称していても微妙に容量が異なるのである。
調べたところ、rpi-cloneが便利そうである。これはCLIで動作するのでjessie liteに適合する。
git hubで公開されているので、先ずはgitを導入する。
pi@raspberrypi1:~ $ sudo apt-get install git
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
git-man libcurl3-gnutls liberror-perl
(中略)
git-man (1:2.1.4-2.1+deb8u5) を設定しています ...
git (1:2.1.4-2.1+deb8u5) を設定しています ...
libc-bin (2.19-18+deb8u10) のトリガを処理しています ...
導入後、rpi-cloneを導入する。
pi@raspberrypi1:~ $ sudo git clone https://github.com/billw2/rpi-clone.git
Cloning into 'rpi-clone'...
remote: Counting objects: 158, done.
remote: Total 158 (delta 0), reused 0 (delta 0), pack-reused 158
Receiving objects: 100% (158/158), 75.04 KiB | 0 bytes/s, done.
Resolving deltas: 100% (59/59), done.
Checking connectivity... done.
導入後、一式を/usr/local/sbin以下にcopyする。
pi@raspberrypi1:~ $ ls
rpi-clone
pi@raspberrypi1:~/rpi-clone $ sudo cp rpi-clone /usr/local/sbin
pi@raspberrypi1:~/rpi-clone $ type rpi-clone
rpi-clone は /usr/local/sbin/rpi-clone です
SDカードリーダにSDカードを挿入後、raspberry piへUSB接続。認識されているかを確認。認識されていない場合は再接続してみる。
pi@raspberrypi1:~/rpi-clone $ lsusb
Bus 001 Device 004: ID 0411:0259 BUFFALO INC. (formerly MelCo., Inc.)
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
マッピングを確認する。/dev/sdcとして認識された。
pi@raspberrypi1:~/rpi-clone $ sudo fdisk -l
Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
(中略)
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 8192 137215 129024 63M c W95 FAT32 (LBA)
/dev/mmcblk0p2 137216 31116287 30979072 14.8G 83 Linux
Disk /dev/sdc: 14.5 GiB, 15552479232 bytes, 30375936 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000
Device Boot Start End Sectors Size Id Type
/dev/sdc1 8192 30375935 30367744 14.5G c W95 FAT32 (LBA)
認識された/dev/sdcへ書き込みをする。
途中でext4のパーティションの名前をどうするか?と質問されるが、元々付与されていないので、そのままenterで続行して良い。
完了したら、shutdown後、SDカードを入れ替えて起動してみる。
root@raspberrypi1:/home/pi/rpi-clone# rpi-clone sdc --force-initialize
Booted disk: mmcblk0 15.9GB Destination disk: sdc 15.6GB
---------------------------------------------------------------------------
Part Size FS Label Part Size FS Label
1 /boot 66.0MB fat16 -- 1 15.5GB -- --
2 root 15.9GB ext4 --
---------------------------------------------------------------------------
== Initialize: IMAGE mmcblk0 partition table to sdc - forced by option ==
1 /boot (23.6MB used) : IMAGE to sdc1 FSCK
2 root (6.5GB used) : RESIZE(15.5GB) MKFS SYNC to sdc2
---------------------------------------------------------------------------
Run setup script : no
Verbose mode : no
-----------------------:
** WARNING ** : All destination disk sdc data will be overwritten!
: The partition structure will be imaged from mmcblk0.
-----------------------:
Initialize and clone to the destination disk sdc? (yes/no): y
Optional destination ext type file system label (16 chars max):
Initializing
Imaging past the start of /boot partition 2.
=> dd if=/dev/mmcblk0 of=/dev/sdc bs=1M count=71 ...
Resizing last partition to end of disk ...
Resize success.
Changing destination Disk ID ...
Delaying so partprobe can update /dev entries ...
=> fsck -p /dev/sdc1 ...
=> mkfs -t ext4 /dev/sdc2 ...
Syncing file systems (can take a long time)
Syncing mounted partitions:
Mounting /dev/sdc2 on /mnt/clone
=> rsync // /mnt/clone with-root-excludes ...
Mounting /dev/sdc1 on /mnt/clone/boot
=> rsync /boot/ /mnt/clone/boot ...
===============================
Done with clone to /dev/sdc
Start - 08:34:08 End - 09:15:01 Elapsed Time - 40:53
Cloned partitions are mounted on /mnt/clone for inspection or customizing.
Hit Enter when ready to unmount the /dev/sdc partitions ...
unmounting /mnt/clone/boot
unmounting /mnt/clone
===============================
0 コメント:
コメントを投稿