RaspbianのrootパーティションをUUIDで記述する

Raspberry PiでUSBメモリを複数利用していると、意図しないタイミングでデバイス名(/dev/sda、/dev/sdb)が変わってしまうことがあります。

すると、USBメモリをルートパーティションとしている場合、/boot/cmdline.txtに記載しているデバイス名と一致せずシステムが起動しなくなることが多発したので、UUIDで指定する方法をまとめます。

※GPTパーティションでないので、GUID(PARTUUID)での記述ではうまく起動できませんでした。

《参考サイト》

  1. initramfsを作成する
    #mkinitramfs -o /boot/initrd
  2. /boot/config.txtの最終行に以下を追記する
    initramfs initrd
  3. /boot/cmdline.txtの最後尾に以下を追記する。
    rootdelay=10
  4. /boot/cmdline.txtの「root=/dev/sda2」を「root=UUID=<uuid>」に修正する。
    ※<uuid>は、#blkid で確認する