>> HOME >> CentOS 4 MENU >> WindowsNT/2000 互換ファイルサーバー (Samba)
Samba は、LINUX/UNIX 上で稼働し、WindowsNT/2000 互換のファイル/プリントサービス機能を提供するオープンソースソフトウェアです。ここでは、WindowsNT/2000 互換のファイルサーバを構築します。

1. Samba のインストール
2. Samba の設定
1 ) Samba サーバーアクセス用ユーザ作成
2 ) 共有パスの作成
3 ) Samba 設定ファイル /etc/samba/smb.conf の編集
3. Samba の起動と自動起動設定
1 ) Samba の起動
2 ) Samba の自動起動設定
4. Samba の動作確認
1. Samba のインストール
[root@linux ~]# yum -y install samba 
Repository dag is listed more than once in the configuration
Setting up Install Process
Setting up repositories
dries                     100% |=========================|  951 B    00:00
dag                       100% |=========================| 1.1 kB    00:00
update                    100% |=========================|  951 B    00:00
base                      100% |=========================| 1.1 kB    00:00
addons                    100% |=========================|  951 B    00:00
extras                    100% |=========================| 1.1 kB    00:00
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for samba to pack into transaction set.
samba-3.0.10-1.4E.6.2.i38 100% |=========================|  99 kB    00:00
---> Package samba.i386 0:3.0.10-1.4E.6.2 set to be updated
--> Running transaction check
--> Processing Dependency: samba-common = 0:3.0.10 for package: samba
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for samba-common to pack into transaction set.
samba-common-3.0.10-1.4E. 100% |=========================|  36 kB    00:00
---> Package samba-common.i386 0:3.0.10-1.4E.6.2 set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 samba                   i386       3.0.10-1.4E.6.2  update             13 M
Installing for dependencies:
 samba-common            i386       3.0.10-1.4E.6.2  update            5.0 M

Transaction Summary
=============================================================================
Install      2 Package(s)
Update       0 Package(s)
Remove       0 Package(s)
Total download size: 18 M
Downloading Packages:
(1/2): samba-common-3.0.1 100% |=========================| 5.0 MB    00:20
(2/2): samba-3.0.10-1.4E. 100% |=========================|  13 MB    00:48
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: samba-common                 ######################### [1/2]
  Installing: samba                        ######################### [2/2]

Installed: samba.i386 0:3.0.10-1.4E.6.2
Dependency Installed: samba-common.i386 0:3.0.10-1.4E.6.2
Complete!
2. Samba の設定
1 ) Samba サーバーアクセス用ユーザ作成 ( 例: centos )
Samba サーバーアクセス用ユーザーは、既に Linux 上に存在しているユーザーである必要があります。
[root@linux ~]# pdbedit -a centos 
new password: xxxxxxxxxx 
retype new password: xxxxxxxxxx 
startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created.
Unix username:        centos
NT username:
Account Flags:        [U          ]
User SID:             S-1-5-21-3216905271-2743746856-1584953360-2000
Primary Group SID:    S-1-5-21-3216905271-2743746856-1584953360-2001
Full Name:
Home Directory:       \\mbrsv02\centos
HomeDir Drive:
Logon Script:
Profile Path:         \\mbrsv02\centos\profile
Domain:               MBRSV02
Account desc:
Workstations:
Munged dial:
Logon time:           0
Logoff time:          土, 14 12月 1901 05:45:51 GMT
Kickoff time:         土, 14 12月 1901 05:45:51 GMT
Password last set:    日, 13  8月 2006 15:57:19 GMT
Password can change:  日, 13  8月 2006 15:57:19 GMT
Password must change: 土, 14 12月 1901 05:45:51 GMT
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
2 ) 共有パスの作成 ( 例: /home/samba )
[root@linux ~]# mkdir /home/samba 
[root@linux ~]# chmod 777 /home/samba 
3 ) Samba 設定ファイル /etc/samba/smb.conf の編集
[root@linux ~]# vi /etc/samba/smb.conf 

# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options (perhaps too
# many!) most of which are not shown in this example
#
# For a step to step guide on installing, configuring and using samba,
# read the Samba-HOWTO-Collection. This may be obtained from:
#  http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf
#
# Many working examples of smb.conf files can be found in the
# Samba-Guide which is generated daily and can be downloaded from:
#  http://www.samba.org/samba/docs/Samba-Guide.pdf
#
# Any line which starts with a ; (semi-colon) or a # (hash)
# is a comment and is ignored. In this example we will use a #
# for commentry and a ; for parts of the config file that you
# may wish to enable
#
# NOTE: Whenever you modify this file you should run the command "testparm"
# to check that you have not made any basic syntactic errors.
#
#======================= Global Settings =====================================
[global]

   # 追加 ( Linux側の日本語文字コード )
   unix charset = eucJP
   display charset = eucJP
   # 追加 ( Windows側の日本語文字コード )
   dos charset = CP932

# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH
   # 変更 ( ワークグループ名の指定 ※Windowsのネットワークのドメイン名またはワークグループと同じにする )
   workgroup = WORKGROUP

   # 追加 ( Sambaで変更したパスワードを Linux に自動的に反映する )
   unix password sync = Yes
   passwd program = /usr/bin/passwd %u

  :
  :
# This option is important for security. It allows you to restrict
# connections to machines which are on your local network. The
# following example restricts access to two C class networks and
# the "loopback" interface. For more examples of the syntax see
# the smb.conf man page
   # 変更 ( LAN 内部からのアクセスのみ許可する )
   hosts allow = 192.168.1. 127.

  :
  :
# A publicly accessible directory, but read only, except for people in
# the "staff" group
# 共有パスの設定 ( ";"を削除し有効にする )
[public]
   comment = Public Stuff
   path = /home/samba
   public = yes
   writable = yes
;   read only = yes
;   write list = @staff
   # 追加 ( ファイル作成時のパーミッション : 誰でも読み書き・削除を可能とする )
   create mask = 0777
   force create mode = 0777
   security mask = 0777
   force security mode = 0777
   # 追加 ( ディレクトリ作成時のパーミッション : 誰でも読み書き・削除を可能とする )
   directory mask = 0777
   force directory mode = 0777
   directory security mask = 0777
   force directory security mode = 0777
   # 追加 ( アクセス可能なユーザーを指定する場合 )
   valid users = user1, user2
   # 追加 ( アクセスするときは全員 root とする )
   force user = root
3. Samba の起動と自動起動設定
1 ) Samba の起動
[root@linux ~]# service smb start 
SMB サービスを起動中:                                      [  OK  ]
NMB サービスを起動中:                                      [  OK  ]
2 ) Samba の自動起動設定
[root@linux ~]# chkconfig smb on 
[root@linux ~]# chkconfig --list smb 
smb             0:off   1:off   2:on    3:on    4:on    5:on    6:off
4. Samba の動作確認
  1. Windowsクライアント側でマイネットワークをエクスプローラで開き、"ワークグループのコンピュータを表示する" を選択し、"Samba Server (Linux)"が表示されることを確認します。
  2. "Samba Server (Linux)"をダブルクリックし、"public" フォルダと "centos" フォルダを確認します。
    ※ "public" フォルダ は全ユーザがアクセス可能な共有フォルダです。
    ※ "linux" フォルダ はログイン(アクセス)したユーザーの個人フォルダです。
  3. それぞれのフォルダで、書き込みなどを行います。また、日本語のファイル名が文字化けしないことを確認します。