最終更新日: 2018-04-22 日 10:13
ホーム | 文書トップ | 目次

Samba CentOS7

Table of Contents

概要

CentOS7でSambaを動作させる方法の事例

インストール

確認

samba-common は既に入っている・・・がこれは本体ではないらしい

$ sudo yum list installed | grep samba
Repository google-chrome is listed more than once in the configuration
samba-client.x86_64                    4.4.4-12.el7_3                  @updates
samba-client-libs.x86_64               4.4.4-12.el7_3                  @updates
samba-common.noarch                    4.4.4-12.el7_3                  @updates
samba-common-libs.x86_64               4.4.4-12.el7_3                  @updates

install

$ sudo yum install samba

設定

smb.conf

workgroup は SAMBA から WORKGROUP にする

[global]
#       workgroup = SAMBA
        workgroup = WORKGROUP

最後に下記を追記

[share]
        comment = Share Directory
        path = /home/share
        public = yes
        writable = yes
        printable = no
        create mask = 0775
        directory mask = 0775
        write list = @family
[temp]
        comment = Temporary file space
        path = /home/temp
        public = yes
        writable = yes
        printable = no
        create mask = 0775
        directory mask = 0775
        write list = @family

起動

systemctl

起動するにはこれ

$ sudo systemctl start nmb.service
$ sudo systemctl start smb.service
$ sudo systemctl is-active smb.service
active
$ sudo systemctl is-active nmb.service
active

有効化(再起動時起動されるようにするにはこれ)

$ sudo systemctl enable nmb.service
Created symlink from /etc/systemd/system/multi-user.target.wants/nmb.service to /usr/lib/systemd/system/nmb.service.
$ sudo systemctl enable smb.service
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.

firewall

firewall

ファイアウォールの設定が必要

マシンに直接ログインして操作

  • 諸ツールの 「ファイアウォールの設定」から
  • 設定:”永続”を選択し
  • サービスのうち samba にチェック
  • メニューのオプション から、”Firewalldの再読み込み”をクリック

パスワード設定

smbpasswd

最初にユーザ権限で行うと怒られる

$ smbpasswd
Old SMB password:
New SMB password:
Retype new SMB password:
Could not connect to machine 127.0.0.1: NT_STATUS_LOGON_FAILURE

sudo で -a ユーザ名で行えばOK

(familyグループの全員分やる)

$ sudo smbpasswd -a wurly
[sudo] password for wurly:
New SMB password:
Retype new SMB password:
Added user wurly.
$ sudo mkdir /home/share
$ sudo chown -R wurly.family /home/share
$ sudo chmod 2775 /home/share
$ sudo mkdir /home/temp
$ sudo chown -R wurly.family /home/temp
$ sudo chmod 2775 /home/temp

SELinux

SELinux

SELinux により、ホームディレクトリへのアクセスは制限されているようだ。

$ sudo getsebool -a | grep samba
[sudo] password for wurly:
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
tmpreaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off

下記設定を行えばOK

$ sudo setsebool -P samba_enable_home_dirs true

後にわかったが、tempセクションでも、ディレクトリは存在するがファイルが見えない現象に遭遇。 下記の設定が必要。

setsebool -P samba_export_all_rw true

その他の設定

homesセクション

いろいろやったが少なくとも下記設定でOK

[homes]
        comment = Home Directories
        valid users = %S, %D%w%S
#       valid users = %S
        browseable = No
#       browseable = yes
#       read only = No
        writable = yes
#       inherit acls = Yes
        create mask = 0775
        directory mask = 0775
#       path = /home/%S

参考

ホーム | 文書トップ | 目次
Created by Emacs 27.1 (Org mode 9.3)