ログ出力などすべてHDDに出力することによりSDカードを延命化できます。
Root filesystemのUSB HDD移行手順
1.(すでにmountされている場合)unmountsudo umount /dev/sda12. パーティション作成
※ディスク丸ごとを1つのパーティションにする場合。
sudoparted /dev/sda mklabel gpt mkpart primary ext4 0 -1s quit3. ext4 file system作成
sudo mkfs.ext4 /dev/sda14. mountする
cd /media sudo mkdir usbhdd sudo mount /dev/sda1 /media/usbhdd df -h5. sdカード内容をコピー
※必要に応じてrsyncインストール。
sudo apt-get install rsync sudo rsync -axv / /media/usbhdd6.起動時設定
sudo vi /boot/cmdline.txt dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/sda1 rootfstype=ext4 elevator=deadline rootwait rootdelay=10※rootを/dev/sda1に変更とrootdelay追加
/etc/fstabで「/」のデバイスを/dev/sda1に修正します。
sudo vi /media/usbhdd/etc/fstab proc /proc proc defaults 0 0 /dev/mmcblk0p1 /boot vfat defaults 0 2 /dev/sda1 / ext4 defaults,noatime 0 1 #/dev/mmcblk0p2 / ext4 defaults,noatime 0 1 # a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[on|off] for that※ /bootのデバイスはRaspbianのバージョンによって異なります(StretchなどではPARTUUID...となっています)。
7.再起動
sudo reboot
※2018/08/21追記 - Raspbian Stretch Lite (version : 2018 June)での上記手順を実行することができます。
※2020/07/13追記 - Raspbian Busterでも上記手順を実行することができます。