ユーザ用ツール

サイト用ツール


usbメモリをsambaでファイル共有する設定

USBメモリをSambaでファイル共有する設定

USBメモリをext4でマウント

USBメモリをSambaで共有する設定を行ったが、多くのUSBメモリはVFATフォーマットであるため、Linux上のSambaやApacheといったソフトウェアの権限管理と適合しない。そのため、まずUSBメモリをext4フォーマットしてから行う。

ext4にフォーマットしたUSBメモリをマウントするため、fstabを設定する。

/etc/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の設定ファイルを下記のように構成する。

  1. /etc/samba/smb.conf
  2. /etc/samba/includes.conf
  3. /etc/samba/smb.d/share-temp.conf

1への追加部分

  • includes.confの読み込み設定
  • [global]セクションへの追加オプション
/etc/samba/smb.conf
    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の設定

  • 他の設定ファイルを読み込む設定
/etc/samba/includes.conf
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
usbメモリをsambaでファイル共有する設定.txt · 最終更新: by Minoru Kijima