ってことで、久々に。
samba って便利なのでよく使うんだけど、たまーに設定ミスってることとかあるからメモ。
ちなみに今回は VMWare で仮想マシンとして CentOS を使用。
VMWare で仮想化していない場合は2.から見ていただければよい。
1. CentOS をインストール
インストール手順は探せばいっぱいあるので割愛
2. yum で samba をインストール
# yum -y install samba
3. ホスト名を設定する。
network ファイルを開いて設定を変更
# vi /etc/sysconfig/network
多分特に設定しないでCentOSをインストールすると以下のようになっていると思う。
インストール時にマシンに固定IPを割り当てている人は、IPの設定がさらにあるはず。
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=localhost.localdomain
CentOSはデフォルトのホスト名が [localhost.localdomain] となっている。
このままだと、Windows は samba の home directryを認識できない、
というか Windows が自分を表す時に使用しているホスト名が「localhost」なので、
CentOS が「localhost」と名乗ってきても認識できない。
ので、名前を適当に変える。
設定を変更したら再起動が必要なので注意。
※例
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=vm-host
再起動
# reboot
4.samba でアクセスするためのユーザを追加する。
CentOS のアカウントがあればそれを設定すれば良い。
# useradd wopose
# passwd wopose
# ※パスワード入力 * 2
# pdbedit -a wopose
# ※パスワード入力 * 2
5.samba でアクセスするディレクトリを作成する。
特に指定しないのであれば CentOS のアカウントのホームを設定すれば良い。
グループに対しても開放するのであれば chown でアクセス可能に設定する。
# mkdir /home/wopose/samba
# chown - wopose:developers /home/wopose/samba
6.samba の設定ファイルを書き換える。
ここで5.で作ったディレクトリに samba でアクセスするように設定する。
# vi /etc/samba/smb.conf
いくつか設定を変える。[global] の設定を変える。
# ----------------------- Network Related Options -------------------------
…省略
# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH
workgroup = MYGROUP
server string = Samba Server Version %v
; netbios name = MYSERVER
; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
hosts allow = 127. 192.168.12. 192.168.13.
…省略
赤いところを自分の環境にあわせて変更。
次に samba 用のディレクトリを設定。
…省略
#============================ Share Definitions ==============================
[homes]
comment = Home Directories
path = /home/wopose/samba/
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S
…省略
7.SELinuxの設定を変更する。
CentOSの場合は基本的にsambaが使えないようにSELinuxで設定されている
以下の要領で変更。
ちなみに smb.conf の最初にも同様の内容が書かれている。
# setsebool -P samba_enable_home_dirs on
8.samba を立ち上げる。
# etc/init.d/smb start
これでも見えない場合はファイヤーウォール等ではアクセスできないよう、
設定されていると思われるので必要なポートを解法すればよい。
え?1.が簡単すぎるって?気にスンナ。