리눅스와 윈도우 사이에서 파일을 서로 공유 하고자 할때 많이 사용합니다.
필자는 CentOS 5.3 에서 설치를 진행 하였습니다.

1. 삼바 설치
yum 으로 설치를 진행 하며 총 4가지 패키지인 samba, client, common, swat 가 설치 되어야 합니다.

[[email protected] ~]# yum -y install samba samba-client samba-common samba-swat

2. 삼바 사용자 추가 및 디렉토리 권한 설정
삼바 로그인을 위한 사용자를 추가 합니다.

[[email protected] ~]# useradd ruo91
[[email protected] ~]# passwd ruo91
Changing password for user ruo91.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

[[email protected] ~]# pdbedit -a ruo91
new password:
retype new password:
Unix username:        ruo91
NT username:
Account Flags:        [U          ]
User SID:             S-1-5-21-3429561750-263143194-684328599-2004
Primary Group SID:    S-1-5-21-3429561750-263143194-684328599-513
Full Name:
Home Directory:       \\ruo91\ruo91
HomeDir Drive:
Logon Script:
Profile Path:         \\ruo91\ruo91\profile
Domain:               RUO91
Account desc:
Workstations:
Munged dial:
Logon time:           0
Logoff time:          never
Kickoff time:         never
Password last set:    목, 22 10월 2009 00:01:05 KST
Password can change:  목, 22 10월 2009 00:01:05 KST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

공유할 samba 하위 디렉토리 생성

[[email protected] ~]# mkdir /home/ruo91/samba
[[email protected] ~]# chown -R ruo91:ruo91 /home/ruo91/samba

3. 삼바 설정 파일 추가/수정

[[email protected] ~]# vi /etc/samba/smb.conf

[global]
# 작업 그룹 설정입니다.
# 윈도우에서는 기본값으로 “WORKGROUP” 으로
# 설정 되어 있으므로 그대로 입력 해줍니다.
workgroup = WORKGROUP
#
# 서버 제목입니다.
server string = CentOS-5.3 Samba Server
#
# 윈도우와 리눅스의 문자셋 설정
# 이렇게 해두면 한글이 안깨집니다.
dos charset = cp949

unix charset = cp949

[homes]
# 윈도우즈 탐색기의 “설명” 란에 표시될 내용입니다.
comment = Home Directories
#
# 공유할 디렉토리 설정 입니다.
path = /home/ruo91/samba
#
# 디렉토리 보기 여부입니다.
# no 로 설정 했다고 해서 접근이 불가한 것은 아닙니다.
browseable = no
#
# 쓰기 가능 여부입니다.
writable = yes
#
# 생성 되는 파일이나 디렉토리의 퍼미션 설정
create mask = 0777

directory mask = 0777

[public]
# 익명 사용자의 공유 폴더 설정입니다.
#
# 윈도우즈 탐색기의 “설명” 란에 표시될 내용입니다.
comment = Public Stuff
# 공유할 디렉토리 설정 부분이며 퍼미션을 755 또는 777을 설정 해주셔야 합니다.
path = /home/ruo91/public
# 익명사용자의 접근 허용 여부입니다.
public = yes
# 쓰기 가능 여부입니다.
writable = yes

4. SELinux 설정 변경
CentOS 에서는 기본적으로 samba 가 사용되지 않도록 SELinux 에 설정 되어 있는데 이것을 변경 해주셔야 합니다. SELinux 를 비활성화 합니다.

[[email protected] ~]# system-config-securitylevel


허용할 서비스에 삼바(Samba) 를 체크 해준 후 확인 하고 빠져 나옵니다.

5. 삼바 시작
위에서 설정한 것들을 적용을 위해 삼바 데몬을 시작 합니다.

[[email protected] ~]# service smb start
SMB서비스를 시작 중:                                       [  OK  ]
NMB서비스를 시작 중:                                       [  OK  ]

재부팅시 자동으로 실행 되기 위해 아래 처럼 해줍니다.

[[email protected] ~]# chkconfig smb on

또는 /etc/rc.local 에 추가

[[email protected] ~]# echo ‘/etc/init.d/smb start’ >> /etc/rc.local

[[email protected] ~]# cat /etc/rc.local | grep smb
/etc/init.d/smb start

6. 삼바 테스트
윈도우에서 삼바 서버로 접속 하기 위해 시작 > 실행에 아래 명령어를 입력 합니다.
(필자의 가상 CentOS 서버 아이피 주소는 192.168.0.28 입니다.)

\\삼바서버IP

\\192.168.0.28

삼바 환경 설정 파일에서 설정한 디렉토리들이 보입니다.

ruo91 디렉토리에 들어가서 파일이 있는걸 볼수 있습니다.

자 그렇다면 테스트로 윈도우에서 텍스트 문서를 하나 만들어 보겠습니다.

서버에서 확인 해보면 한글이 깨지지 않았으며 정상적으로 생성 되어진 걸 볼수 있습니다.

[[email protected] ~]# ls -al /home/ruo91/samba
합계 20
drwxr-xr-x 3 ruo91 ruo91 4096 10월 22 00:14 .
drwxr-xr-x 4 root  root  4096 10월 21 23:41 ..
drwxr-xr-x 2 ruo91 ruo91 4096 10월 21 23:38 hello
-rw-r–r– 1 ruo91 ruo91   81 10월 21 23:39 hello.c
-rw-r–r– 1 ruo91 ruo91  228 10월 21 23:40 hello.tar.gz
-rwxr–r– 1 ruo91 ruo91    0 10월 22 00:08 윈도우에서 만들어 봐쪄.txt

참고
http://wopose.blogspot.com/2009/10/vmware-centos-samba.html