CentOS 7 sambaインストール

ファイルサーバ(samba)

■ sambaをyumでインストール

[root@server1 ~]# yum install samba
読み込んだプラグイン:fastestmirror, langpacks, priorities
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * centosplus: mirrors.btte.net
 * epel: kartolo.sby.datautama.net.id
 * extras: ftp.riken.jp
 * rpmforge: ftp.kddilabs.jp
 * updates: mirrors.btte.net
45 packages excluded due to repository priority protections
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ samba.x86_64 0:4.1.1-35.el7_0 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

====================================================================================================
 Package             アーキテクチャー     バージョン                    リポジトリー           容量
====================================================================================================
インストール中:
 samba               x86_64               4.1.1-35.el7_0                updates               536 k

トランザクションの要約
====================================================================================================
インストール  1 パッケージ

総ダウンロード容量: 536 k
インストール容量: 1.6 M
Is this ok [y/d/N]: y
Downloading packages:
samba-4.1.1-35.el7_0.x86_64.rpm                                              | 536 kB  00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  インストール中          : samba-4.1.1-35.el7_0.x86_64                                         1/1
  検証中                  : samba-4.1.1-35.el7_0.x86_64                                         1/1

インストール:
  samba.x86_64 0:4.1.1-35.el7_0

完了しました!

既存のユーザをSambaサーバーアクセス用ユーザとする場合

[root@server1 ~]# pdbedit -a higo
new password: ← パスワード入力
retype new password: ← パスワード再入力
Unix username:        higo
NT username:
Account Flags:        [U          ]
User SID:             S-1-5-21-3123654516-2731996513-2070615243-1003
Primary Group SID:    S-1-5-21-3123654516-2731996513-2070615243-513
Full Name:            higo
Home Directory:       \\server2\higo
HomeDir Drive:
Logon Script:
Profile Path:         \\server2\higo\profile
Domain:               SERVER2
Account desc:
Workstations:
Munged dial:
Logon time:           0
Logoff time:          木, 07  2月 2036 00:06:39 JST
Kickoff time:         木, 07  2月 2036 00:06:39 JST
Password last set:    金, 18  7月 2014 08:13:26 JST
Password can change:  金, 18  7月 2014 08:13:26 JST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

ユーザーアカウントを表示

[root@server1 ~]# pdbedit -L
higo:1000:higo

ユーザーアカウントの削除

[root@server1 ~]# pdbedit -x higo

■共有ディレクトリ作成

[root@server1 ~]# mkdir /home/share
[root@server1 ~]# chmod 777 /home/share ← 権限変更
[root@server1 ~]# chown nobody:nobody /home/share ← 共有ディレクトリ所有者変更

■ samba設定ファイル変更

[root@server1 ~]# vi /etc/samba/smb.conf
[global]
日本語文字コード変更(追記)
        unix charset = UTF-8
        dos charset = CP932

ワークグループを環境に合わせて変更
        workgroup = WORKGROUP

ネットワーク内のみからアクセス許可
        hosts allow = 192.168.1. 127.

ユーザー認証なしの設定に変更
        security = user
        passdb backend = tdbsam
        guest account = nobody
        map to guest = Bad User

共有フォルダ(ゴミ箱機能付きの)「share」 セクションの作成(最終行に追加)
[share]
   path = /home/share
   writable = yes
   guest ok = yes
   guest only = yes
   create mode = 0777
   directory mode = 0777
   share modes = yes
   vfs objects = recycle
   recycle:repository = .recycle
   recycle:keeptree = no
   recycle:versions = yes
   recycle:touch = no
   recycle:maxsize = 0
#Accessをファイルサーバで使うと、終了するたびに何故かごみ箱にファイルが作成される。
#なので、Accessのファイルはごみ箱にはファイルを作らないようにする。
   recycle:exclude = *.tmp ~$* *.mdb *.ldb *.accdb *.laccdb

■ sambaの起動

[root@server1 ~]# systemctl start smb
[root@server1 ~]# systemctl start nmb

■ 自動起動設定

[root@server1 ~]# systemctl enable smb
ln -s '/usr/lib/systemd/system/smb.service' '/etc/systemd/system/multi-user.target.wants/smb.service'
[root@server1 ~]# systemctl enable nmb
ln -s '/usr/lib/systemd/system/nmb.service' '/etc/systemd/system/multi-user.target.wants/nmb.service'

■ Samba確認
Windowsクライアントで「スタート」→「ファイル名を指定して実行」→「名前」に”\\SERVER1\share”または”\\192.168.1.4\share”を入力して「OK」ボタンをクリック。

ファイルサーバ(samba)

Lan内であれば、誰でもユーザー認証なしで読み書きできるフルアクセスの共有フォルダを「samba」を作成。
■ sambaがインストールされてるか調べる

[root@server1 ~]# rpm -aq|grep samba
samba-common-3.5.4-68.el6_0.2.i686
samba-winbind-clients-3.5.4-68.el6_0.2.i686
samba-client-3.5.4-68.el6_0.2.i686

■ sambaをyumでインストール

[root@server1 ~]# yum install samba
Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
* base: mirror.khlug.org
* centosplus: mirror.khlug.org
* epel: ftp.jaist.ac.jp
* extras: mirror.khlug.org
* updates: ftp.jaist.ac.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package samba.i686 0:3.5.4-68.el6_0.2 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================================
Package             Arch               Version                         Repository             Size
====================================================================================================
Installing:
samba               i686               3.5.4-68.el6_0.2                updates               5.0 M
Transaction Summary
====================================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)
Total download size: 5.0 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
samba-3.5.4-68.el6_0.2.i686.rpm                                              | 5.0 MB     00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing     : samba-3.5.4-68.el6_0.2.i686                                                  1/1
Installed:
samba.i686 0:3.5.4-68.el6_0.2
Complete!

■ フルアクセスの共有フォルダ「share」の作成

[root@server1 ~]# mkdir /home/share
権限変更
[root@server1 ~]# chmod 777 /home/share
所有者変更
[root@server1 ~]# chown nobody:nobody /home/share
すでに作成してある共有フォルダ全てのフォルダ、ファイルの所有者を変更する必要がある場合
[root@server1 ~]# chown -R nobody /home/share

■ samba設定ファイル変更

[root@centos ~]# vi /etc/samba/smb.conf
[global]
日本語文字コード変更(追記)
unix charset = UTF-8
dos charset = CP932
ワークグループを環境に合わせて変更
workgroup = WORKGROUP
ネットワーク内のみからアクセス許可
;       hosts allow = 127. 192.168.1.
ユーザー認証なしの設定に変更
security = share
共有フォルダ(ゴミ箱機能付きの)「share」 セクションの作成(最終行に追加)
[share]
path = /home/share
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
share modes = yes
vfs objects = recycle
recycle:repository = .recycle
recycle:keeptree = no
recycle:versions = yes
recycle:touch = no
recycle:maxsize = 0
#Accessをファイルサーバで使うと、終了するたびに何故かごみ箱にファイルが作成される。
#なので、Accessのファイルはごみ箱にはファイルを作らないようにする。
recycle:exclude = *.tmp ~$* *.mdb *.ldb *.accdb *.laccdb

■ sambaの起動

[root@server1 ~]# /etc/rc.d/init.d/smb start
SMB サービスを起動中:                                      [  OK  ]
nmbの起動
[root@server1 ~]# /etc/rc.d/init.d/nmb start
自動起動設定
[root@server1 ~]# chkconfig smb on
[root@server1 ~]# chkconfig nmb on
[root@server1 ~]# chkconfig --list smb
smb             0:off   1:off   2:on    3:on    4:on    5:on    6:off
[root@server1 ~]# chkconfig --list nmb
nmb             0:off   1:off   2:on    3:on    4:on    5:on    6:off

■ Samba確認
Windowsクライアントで「スタート」→「ファイル名を指定して実行」→「名前」に”\\SERVER1\share”または”\\192.168.1.4\share”を入力して「OK」ボタンをクリック。