Raspberry Pi 運用・管理
Perlの スクリプトによる SDカードの縮小
Perlの スクリプトによる SDカードの縮小
Raspberry Pi のSDカードを、バックアップのためにコピーする場合、記載が同じ容量のSDカードでも製品やロットが違うと、バイト単位で容量が異なりコピーできない場合がある。
Raspberry PiのSDカードを、容量の小さなSDカードにリサイズする方法は、Web上に数多く紹介されているが、やってみると上手くいかない(Raspberry Piが起動しない)場合が多い。
私自身も、先だってまではうまく縮小できていた方法が、最近になって実行すると、上手くゆかなくなっていたりする。
スポンサー リンク
数ある方法の中で、成功した最適解。
Perl のスクリプトを使って imgファイルを縮小
目 次
1. Raspberry Pi に resizeimage.pl をコピーする
「resizeimage.pl 」の内容を、RPiフォーラムの『Reducing Raspbian File System Image Size』より、コードをコピーする。
コピーした Perl のスクリプトコードを、Raspberry Pi のホームディレクトリに保存する。
スクリプトのパーミッションを変更しておく。
chmod 755 /home/pi/work/resizeimage.pl
2. 縮小したいSDカードの imgファイルを準備する
Windows 10の環境で、SDカードのバックアップを行うことで、imgファイルが作成できる。
SSDは、Windowsの【 NTFS 】フォーマットで良い。
3. Raspberry Piで imgファイルを縮小する
縮小スクリプトの実行。
cd /home/pi/work
sudo perl ./resizeimage.pl /media/ssd/raspi.img
sudo perl ./resizeimage.pl /media/ssd/raspi.img
「/media/ssd」は、SSDのマウントポイント。
実行結果。(10分程度で終了。)
pi@pi:~/work $ sudo perl ./resizeimage.pl /media/ssd/raspi.img
raspi.img:
===========
Old size - 61119 MB (59.69 GB)
New size - 10521 MB (10.28 GB)
Image file was reduced by 50598 MB (49.41 GB)
===========
Old size - 61119 MB (59.69 GB)
New size - 10521 MB (10.28 GB)
Image file was reduced by 50598 MB (49.41 GB)
64GBのSSDが、10GB余りに縮小された。
※:SDカードの領域拡大は、『Gparted』で簡単に行える。
4. SSDのマウント要領
NTFSフォーマットの、外付けSSDをマウントするには、パッケージのインストールが必要。
sudo apt install ntfs-3g
認識されているデバイスを調べる。
sudo fdisk -l ・・・ 以下、sda1 で認識されたとして記述
マウントさせるディレクトリーを作る。
sudo mkdir /media/ssd
作成したディレクトリーに、マウントする。
sudo mount /dev/sda1 /media/ssd
マウントポイントの確認。
df -h
120GBのSSDが【 /media/ssd 】でマウントされている。
Filesystem Size Used Avail Use% Mounted on
/dev/root 29G 4.8G 23G 18% /
devtmpfs 460M 0 460M 0% /dev
tmpfs 464M 0 464M 0% /dev/shm
tmpfs 464M 13M 452M 3% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 464M 0 464M 0% /sys/fs/cgroup
/dev/mmcblk0p1 42M 22M 20M 54% /boot
tmpfs 93M 0 93M 0% /run/user/1001
/dev/sda1 120G 60G 60G 51% /media/ssd
/dev/root 29G 4.8G 23G 18% /
devtmpfs 460M 0 460M 0% /dev
tmpfs 464M 0 464M 0% /dev/shm
tmpfs 464M 13M 452M 3% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 464M 0 464M 0% /sys/fs/cgroup
/dev/mmcblk0p1 42M 22M 20M 54% /boot
tmpfs 93M 0 93M 0% /run/user/1001
/dev/sda1 120G 60G 60G 51% /media/ssd
5. SSDの所有権と権限の変更
所有権と権限の確認。
ls -l /media/ssd
所有権の変更。
chown -R pi:pi /media/ssd
権限の変更。
chmod 777 /media/ssd
以上。
(2019.07.14)
(2019.07.14)
スポンサー リンク