背景
数多の先人たちの記録をたどって何とかできたので、自分も記録を残しておく。
iPadとWindowsPCのデータのやりとりにクラウドストレージを使うと、反映の待ち時間が長い。
PCのHDDを共有フォルダとして公開しても、PCの電源が落ちていたらアクセスできない。
LANからアクセスできるちょっとしたストレージが欲しい。
ラズパイでファイルサーバーが作れるっぽい。
色々試して出来てから思い出しながら書いてるので、抜け漏れなどによる再現性は保証できません。
あとまだ使ってないので、利便性は分かりません。
準備
- Raspberry Pi4
- USBメモリ
手順
1. USBメモリのフォーマット
FAT32でフォーマットする
普通にフォーマットする(ext4でフォーマットする)と、Windowsで読み込めないらしい。
https://qiita.com/hoshinom78/items/a6552e85423a52b21a2f#fat32-%E3%81%AE%E7%90%86%E7%94%B1
元々置いてるデータを直接コピーしたいのでこれに。
ただしFAT32だと後々面倒だったので、Windowsに刺さないならこれじゃなくて良いと思う。
- USBメモリをRaspberry Piに刺す
- 繋がってる場所を探す
sudo fdisk -l
->だいたい/dev/sda1
になってるはず - パーティションを作り直す
sudo fdisk /dev/sda1
パーティションの削除→d
→1入れる
パーティションの作成→n
→p
→1
→(空)
終了→q
- フォーマットする
sudo mkfs.vfat /dev/sda1
2. USBメモリの自動マウント
共有フォルダにするのに、ディレクトリを指定する必要がある。
指し直したりする度に変わったら面倒なので対応。
- usbmountをインストールする
sudo apt install usbmount -y
- サービスに登録する
sudo mkdir /etc/systemd/system/systemd-udevd.service.d
sudo vim /etc/systemd/system/systemd-udevd.service.d/00-my-countflags.conf
以下を入力
[Service]
PrivateMounts=no
マウントの設定をするために必要な情報を調べる
- USBメモリのUUIDを調べる
sudo blkid /dev/sda1
- ユーザーIDとグループIDを調べる
id
マウント情報を編集する
- マウントしたいディレクトリを作る
mkdir /media/nas0
(ショートカットみたいになってる) - /etc/fstabを編集する
sudo vim /etc/fstab
並んでいるリストの末尾に以下を追加する
UUID="調べたUUID" /media/nas0 vfat uid=1001,gid=1001,iocharset=utf8,umask=000 0 0
vfatがFAT32でフォーマットしたデバイスと指定
FAT32だと書き込みが出来ないので、uidとgidを指定する必要がある
日本語の文字化けがあるので、charsetを指定
ここ書き込めるようにするのが面倒だった。
3.共有フォルダの作成
- sambaをインストールする
sudo apt-get install samba
→青背景の注意書きが出てきたら「いいえ」 - 設定ファイルを書き換える
sudo vim /etc/samba/smb.conf
末尾に以下を追記
[storage]
comment = "file storage"
path = /media/nas0
guest ok = no
writable = yes
force user = pi
- sambaサービスを再起動する
sudo systemctl restart smbd
- sambaユーザーを作成する
sudo pdbedit -a pi
→パスワード指定
WindowsPCのディレクトリにラズパイのIPアドレスを打ち込み、sambaのアカウントを入れたらアクセスできる…はず。