====== USBメモリをSambaでファイル共有する設定 ====== ===== USBメモリをext4でマウント ===== USBメモリをSambaで共有する設定を行ったが、多くのUSBメモリはVFATフォーマットであるため、Linux上のSambaやApacheといったソフトウェアの権限管理と適合しない。そのため、まずUSBメモリをext4フォーマットしてから行う。\\ * [[usbメモリのext4フォーマット|usbメモリのext4フォーマット手順]] ext4にフォーマットしたUSBメモリをマウントするため、fstabを設定する。 LABEL=USBDISK /media/pi/USBDISK ext4 defaults,noatime,nofail 0 0 **fstab**の設定が正しいことをコマンドで確認する。 sudo findmnt --verify --verbose 再起動もしくはマウントテストを行う sudo mount -a ===== Sambaの設定 ===== USBメモリにSambaで共有するディレクトリを作成する。 mkdir /media/pi/USBDISK/TEMP ls -ld /media/pi/USBDISK/TEMP Sambaで共有するディレクトリの権限を、下記になるように設定する。 ls -ld /media/pi/USBDISK/ /media/pi/USBDISK/TEMP/ drwxr-xr-x 4 root root 4096 7月 19 11:25 /media/pi/USBDISK/ drwxrwxrwx 2 root root 4096 7月 19 12:05 /media/pi/USBDISK/TEMP/ 今回はSambaだけでなくApache2からのアクセスを可能にするために、他者(others)へ**x**権限を設定する。 ==== Samba設定ファイル ==== Sambaの設定ファイルを下記のように構成する。 - /etc/samba/smb.conf - /etc/samba/includes.conf - /etc/samba/smb.d/share-temp.conf === 1への追加部分 === * includes.confの読み込み設定 * [global]セクションへの追加オプション include = /etc/samba/includes.conf # Maps unknown or invalid users to the guest account during authentication. map to guest = Bad User # Defines 'nobody' as the Unix user used for guest access. guest account = nobody === 2の設定 === * 他の設定ファイルを読み込む設定 include = /etc/samba/smb.d/share-temp.conf === 3の設定 === * Samba(TEMP 共有設定) [TEMP] path = /media/pi/USBDISK/TEMP browseable = yes read only = no guest ok = yes force user = nobody create mask = 0777 directory mask = 0777 ==== Sambaへの設定反映 ==== 設定チェック testparm Samba 再起動 sudo systemctl restart smbd