RPiに外部記憶メモリ2本挿す

  • 投稿日:
  • by
  • カテゴリ:

◎ざっくりと要点

(1)USBメモリを2本刺しすると、それぞれ /dev/sda, /dev/sdb と認識される。しかしRaspberry Piの気まぐれで、sdaとsdbのマウント順番がまれに逆になることがあり、動作不安定に陥った。

(2)そこで blkid コマンドで記憶装置の固有ID(UUID)を取得して、/etc/fstab に記述して、安定動作するようになった。

◎詳細

RaspberryPiをサーバに使い始めると、32GBのmini-sdhcチップに収まらなくなってくる。かといって、せっかくの節電サーバーなので、HDDを使いたくない。そこで、もう1組、mini-sdhcチップとアダプタをRaspberry Piに挿して、/pub なるディレクトリに接ぎ木することにする。

①USBメモリ「追加」を挿す。

# cd /dev
# ls sd*
sda sda1 sdb

sdbが見えるのを確認する。

②fdiskしてパーテーションを切る

# fdisk /dev/sdb

n → p → 1 → t → 83(Linux) → w (書き込み)

③ext4でファイルシステムを作る

# mkfs /dev/sdb1

④mountできるか試してみる

# mount /dev/sdb1 /mnt

# df

/dev/sdb1が/mnt にマウントされてればOK

# umount /mnt

一回umountする。

④blkidでストレージの固有番号を拾う。
root@ocean:/home/makoto# blkid /dev/sdb1
/dev/sdb1: UUID="69a2da4c-3e8a-4df2-98fe-58973f9dc232" TYPE="ext4"
root@ocean:/home/makoto#

⑤/dev/sda1のほうもUUIDを拾いましょう。
root@ocean:/home/makoto# cat /etc/fstab
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
/dev/sda1 /home ext4 defaults 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
root@ocean:/home/makoto# blkid /dev/sda1
/dev/sda1: UUID="4631f4d3-3018-45fb-929b-58bb036980c9" TYPE="ext4"
root@ocean:/home/makoto# vi /etc/fstab
root@ocean:/home/makoto# cat /etc/fstab
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
UUID=4631f4d3-3018-45fb-929b-58bb036980c9 /home ext4 defaults 0 1
UUID="69a2da4c-3e8a-4df2-98fe-58973f9dc232" /pub ext4 defaults 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
root@ocean:/home/makoto#

以上でござる。