約 6 分で読めます。
Raspberry Pi 4にUSB HDDを接続して使いたいな!
microSDだと信頼性に欠けるなんて話も聞くし。
こんな疑問を解決します。
Raspberry Piで何かしらデータサーバーを構築するとき、課題になるのがストレージです。
通常Raspberry PiのOSはmicroSDに入っていますが、microSD自体はHDDに比べて信頼性が低いと言われています。
ここで言う「信頼性」とは以下に置き換えて考えるとわかりやすいです。
・耐障害性 突然の電源断(停電など)が発生してもデータやストレージデバイスそのものが壊れにくい ・耐久性 長期間にわたってデータを読み書きすることができる
Raspberry Pi 4にUSB-HDDを接続して自動認識させ、データ置き場として使えるようにしました。
その手順を紹介します。
といってもやることはたった1つ。
/etc/fstabにUSB-HDDの情報とマウント先を記載するだけです。
こんな感じで最後の行を追加。
$ vim /etc/fstab proc /proc proc defaults 0 0 PARTUUID=0d91114b-01 /boot vfat defaults 0 2 PARTUUID=0d91114b-02 / ext4 defaults,noatime 0 1 a swapfile is not a swap partition, no line here use dphys-swapfile swap[on|off] for that /dev/disk/by-uuid/680204DA0204AEDE /mnt/usb-hdd ntfs uid=1001,gid=1001 0 0 # 追加
fstabの書き方自体はいろいろなサイトで解説されているので詳細は省きますが、上記は以下のフォーマットで書いています。
<UUID> <マウント先> <ファイルシステム> <マウントオプション> <dumpオプション> <fsckオプション>
UUIDはディスクデバイス及びパーティションにより一意の文字列が割り当てられます。
USB HDDを接続した状態でこのコマンドを実行すると確認できます。
mmcblkが入っている文字列はmicroSDなので、ご注意を。
この場合は「680204DA0204AEDE」がsda1パーティションのUUIDとなります。
$ ls -l /dev/disk/by-uuid/ total 0 lrwxrwxrwx 1 root root 9 Apr 26 18:48 66504944-69e7-30a5-b103-10dc818d1b50 -> ../../sda lrwxrwxrwx 1 root root 10 Apr 26 18:48 680204DA0204AEDE -> ../../sda1 lrwxrwxrwx 1 root root 15 Apr 26 18:48 b3ce35cd-ade9-4755-a4bb-1571e37fc1b9 -> ../../mmcblk0p2 lrwxrwxrwx 1 root root 15 Apr 26 18:48 EBBA-157F -> ../../mmcblk0p1
その後、ファイルシステムまでは特に問題ないと思います。
マウントオプションはだいたい「mountコマンド時に指定するオプション」と考えれば良いです。
厳密には「違う」という話もありますが、概ねとしては上記理解でOK。
自分は一般ユーザーで読み書きしたかったので、ユーザーIDとグループIDを指定しています。
dumpオプションはdumpコマンド時のオプションを指定するようです。
「ようです」というのは自分がdumpコマンドを使ったことがないためです。
fsckオプションは起動時にfsckによるチェックを行うかどうかを指定します。
すべて正常に記載し、OSを再起動したら以下のようにUSB HDDが認識されていると思います!
指定したUID/GIDでマウントされていますね!
yasu@raspberrypi:~ $ ls -l /mnt/ total 4 drwxrwxrwx 1 yasu yasu 4096 Mar 21 19:58 usb-hdd
終わりに
いかがでしたか。
Raspberry Piをサーバーとして使おうとするとHDDやSSDは必須ですので、この記事がお役に立てば嬉しいです!
Comments