ArchLinux 2017.10.01: SMBサーバのsambaをインストールする

sambaサーバをインストールする手順を記載します。

1 sambaのインストール

sambaをインストールします。

$ sudo pacman -Sy --noconfirm samba
$ sudo systemctl enable smbd nmbd

2 pdbedit

pdbeditでsambaへアクセスできるユーザを追加します。このユーザはLinux上に存在するユーザである必要があります。pdbeditで追加しようとするユーザがLinux上に存在しない場合は、useraddで追加しておく必要があります。

$ sudo useradd -m hiroom2

pdbeditでhiroom2というユーザを追加します。

$ sudo pdbedit -a hiroom2
new password:
retype new password:

-tオプションは標準出力からパスワードを設定することができます。

$ yes "${PASSWD}" | sudo pdbedit -a hiroom2 -t

3 /etc/samba/smb.confの設定

/etc/samba/smb.confの雛形を作成します。

$ cat <<EOF | sudo tee /etc/samba/smb.conf
[global]
   workgroup = MYGROUP
   server string = Samba Server
   server role = standalone server
   log file = /var/log/samba/log.%m
   max log size = 50
   dns proxy = no

EOF

ここではホームディレクトリと共有ディレクトリのアクセスを可能にする設定について記載します。

設定が完了した後、systemctlでsmbdとnmbdを再起動します。

$ sudo systemctl restart smbd nmbd

3.1 ホームディレクトリ共有

以下の設定では、pdbeditで作成したユーザのホームディレクトリをユーザ個人用にアクセスできるようになります。

$ cat <<EOF | sudo tee -a /etc/samba/smb.conf
[homes]
   comment = Home Directories
   browseable = no
   read only = no
   valid users = %S

EOF

3.2 全ユーザ共有ディレクトリ

以下の設定では、pdbeditで追加したユーザでディレクトリを共有できます。

$ cat <<EOF | sudo tee -a /etc/samba/smb.conf
[share]
   comment = Share directory
   path = /var/lib/share
   read only = no
   guest only = no
   guest ok = no
   share modes = yes

EOF

共有ディレクトリのアクセス権は0777にします。

$ sudo mkdir /var/lib/share
$ sudo chmod 0777 /var/lib/share

4 Windows 10からsambaへアクセスする

エクスプローラのURL欄にsambaのURLを入力します。ホームディレクトリへは\\192.168.11.66\hiroom2へアクセスします。共有ディレクトリへは\\192.168.11.66\shareへアクセスします。