はじめに
CentOS6.4上でsambaを使用してファイルサーバを構築する際にいくつか手間取ったポイントがあったので備忘録としてまとめておきます。
環境
- CentOS6.4
- samba3.6
sambaのインストール
パッケージはyumを使用してインストールします。
sudo yum install samba
sambaの設定
自動起動の設定
samba本体と、Windowsのファイル共有で使用されるNetBIOS名を解決するためのnmbdを自動で起動するように設定します。
sudo chkconfig smb on sudo chkconfig nmb on
samba用ユーザの追加
sambaにログインするためのユーザを作成します。ここで作成するユーザー名は、Linuxのユーザー名と合わせておきます。もし、Linuxのユーザー名と異なるユーザ(Linuxに存在しないユーザ名)を作成する場合は、 /etc/samba/smbusers でユーザー名のマッピング設定を記述する必要があります。
sudo smbpasswd -a [共有させるユーザ名]
共有するディレクトリの作成
Linux上で共有するディレクトリを生成します。
sudo mkdir /samba/nyaruko -p sudo chown [共有させるユーザ名]:[共有させるユーザ名] /samba/nyaruko sudo chcon -t samba_share_t /samba/nyaruko -R
最後に実行しているchconコマンドに注意してください。SELinuxが有効な環境ではこのコマンドを実行して、ディレクトリへsambaによるアクセスポリシーを付与する必要があります。もし、このコマンドを実行しないと「アクセス許可がありません。ネットワーク管理者にアクセス許可を要求してください。」と言ったエラーメッセージが表示されアクセスできません。
設定ファイルの修正
先程作成したディレクトリを共有するために、 /etc/samba/smb.conf を修正します。
[global] # 共有の設定 workgroup = Nyaruko server string = "いつもニコニコあなたの隣に這い寄る混沌、ニャルラトホテプ、です!" # ログの設定 log file = /var/log/samba/log.%m max log size = 50 # ユーザ認証の設定 security = user passdb backend = tdbsam # プリンタ関連の設定 load printers = no cups options = raw #============================ Share Definitions ============================== [Nyaruko] # 共有するフォルダに関する設定 path = /samba/nyaruko comment = "いつもニコニコあなたの隣に這い寄る混沌、ニャルラトホテプ、です!" writable = yes valid users = [共有させるユーザ名]
Windowsからのログイン
サーバーにエクスプローラからアクセスすると、認証ダイアログが表示されます。smb.confで指定したワークグループが、Windowsに設定されているワークグループ名と異なる場合、ワークグループ名を指定してログインする必要があります。