Raspberry Piで自宅ファイルサーバを建ててみた

Raspberry Piで簡単なファイル共有サーバを建ててみたので、構築手順とPCやスマホからの接続方法についてまとめてみました。

- 動作環境
    - Raspberry Pi4 ModelB 4GB
    - Raspberry Pi OS（64-bit） Release date: December 5th 2023
    - smbd: Version 4.17.12-Debian


Raspberry Piのセットアップ方法は過去記事をご参照ください。

https://qiita.com/to-fmak/items/2c6a019d863deecdf5dc

# 前提
外部ストレージがマウントされていること。
![IMG_0119.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/3e9a11a3-b897-5cde-019e-e600480bf75e.jpeg)



# Sambaのインストール
>Samba （サンバ） は、マイクロソフトのWindowsネットワークを実装したフリーソフトウェア。 Linux、Solaris、BSD、macOSなどのUnix系オペレーティングシステム (OS) を用いて、Windowsのファイルサーバやプリントサービス、ドメインコントローラ機能、ドメイン参加機能を提供する。 
https://ja.wikipedia.org/wiki/Samba

パッケージ最新化を行っておきます。
```bash
$ sudo apt update
$ sudo apt upgrade -y
```

sambaをインストールします。
```bash
$ sudo apt install samba
```

# smb.confの編集
Samba設定ファイルのsmb.confを編集します。
```bash
$ sudo vi /etc/samba/smb.conf
```

smb.confファイルの最終行に下記を追記します。（testというLinuxユーザーを使います）
```
[test]
   comment = media
   path = /media/test/volume01
   guest ok = no
   read only = yes
```
- path: ユーザーがアクセスするディレクトリ、今回は外部ストレージのマウントポイントを指定する
- guest ok: noの場合、接続時にパスワードが要求される
- read only: 今回は読み取り専用にしたいのでyesにする

その他の設定項目は公式サイトをご参照ください。

https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html

# パスワードの設定
Samba接続用パスワードを設定します。（Linuxユーザーのパスワードとは別のものです）
```bash
$ sudo smbpasswd -a test
```

# Sambaの再起動
Sambaを再起動します。
```bash
$ sudo systemctl restart smbd
```

# 共有フォルダにアクセス
## Windowsからのアクセス
ファイルエクスプローラーを開いて、アドレスバーに`\\<Raspberry PiのIPアドレス>`を入力する
![Screenshot 2024-01-29 211314.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/7018a600-ca08-8719-9917-59c9f11db672.png)

共有フォルダをダブルクリックすると、「ネットワーク資格情報の入力」画面が表示されます。上記「パスワードの設定」手順で設定したパスワードを入力すると、共有フォルダを開くことができます。
![Screenshot 2024-01-29 211351.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/cc9e5c96-670a-5cd3-c9be-924202b9f56c.png)


## Macからのアクセス
Finderを開き、「移動」＞「サーバへ接続」と選択します。
![Screenshot 2024-01-29 at 21.20.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/56600696-6f4b-b223-1bed-c837167a50bc.png)

`smb://<Raspberry PiのIPアドレス>`を入力し、「接続」をクリックします。


![Screenshot 2024-01-29 at 21.21.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/55da5825-fa19-1741-6b0c-05f272e14cca.png)

![Screenshot 2024-01-29 at 21.21.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/c182e8bf-bded-6fab-808f-23e9a8d0863d.png)

接続情報を入力します。
![Screenshot 2024-01-29 at 21.21.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/f18d1a7f-c503-c0a4-b222-3ad2175a0c3d.png)
![Screenshot 2024-01-29 at 21.21.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/20ddd58f-5740-07d2-1acb-b97089dcbbc7.png)



## iosデバイスからのアクセス
「ファイル」アプリを開きます。
![IMG_0120.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/39592922-87c4-c5b7-bbf1-eaa92055b559.png)

「...」アイコンをタップし、「サーバへ接続」をタップします。
![IMG_0121.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/397b9723-b953-d654-0e83-0fb65a4e0ddc.png)


`smb://<Raspberry PiのIPアドレス>`を入力し、「接続」をタップします。
![IMG_0122.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/29d6bb6e-de80-c180-987e-12dba7762bc8.png)

接続情報を入力し、「次へ」をタップします。
![IMG_0123.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/498f2860-7cb7-9f04-f517-1bab44edb94f.png)
![IMG_0126.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2954734/72568595-dc84-f689-e38e-6f71d3e226a0.png)