우분투에서 samba를 이용해서 파일공유 사용하기
파일을 공유하려는 서버에서 아래와 같이 삼바 패키지를 설치한다.
sudo apt-get install samba smbfs
|
이 공유에 접근할 아이디와 비밀번호를 설정한다.
접근 아이디를 지울 때는 다음과 같이 한다.
sudo smbpasswd -x system_username
|
삼바 서버를 설정하기 위해 문서 편집기로 설정파일을 연다.
sudo vim /etc/samba/smb.conf
|
그 안에 다음과 같은 내용을 입력한다.
# 기본적인 설정 [global] # 워크그룹이름은 맘대로 정한다. workgroup = WORKGROUP encrypt passwords = yes # 접근을 허락할 아이피 범위 hosts allow = 192.168. # 문자 인코딩 설정, 우분투는 utf-8을 기본적으로 사용하고 # 이것이 윈도우즈에서도 한글이 잘 깨지지 않는다. unix charset=utf-8 dos charset=utf-8 #공유할 디렉토리 이름, 이것은 여러개를 만들 수도 있다. [MyDoc] comment = My Documents path = /공유할/디렉토리 #읽기 전용으로 접근할지 여부 read only = no browsable = yes
|
삼바의 설정은 매우 다양하게 할 수 있다.
아래에 다양한 삼바 설정을 설명했다.
삼바 설정이 끝났으면, 설정이 제대로 되었는지 검사한다.
문제가 없으면 삼바를 실행한다.
sudo /etc/init.d/samba restart
우분투에서 패키지로 설치된 삼바는 컴퓨터가 켜질 때마다 실행될 것이다.
우분트 클라이언트에서 공유에 접근하는 법은 두가지이다.
첫째)
위치 메뉴 > 서버에 연결 을 선택한 후,
서비스 종류는 Windows공유를 지정하고,
사용자 이름과 연결에 사용할 이름 부분만 위에서 지정한 네트워크사용자아이디를 지정하면 된다.
둘째)
mount -t cifs //삼바서버아이피/삼바공유폴더이름 /공유가/지정될/로컬폴더 -o username=네트워크사용자아이디,password=비밀번호,iocharset=utf8,file_mode=0777,dir_mode=0777
-o 이후로는 띄어쓰기를 해서는 안된다.
윈도우즈에서 삼바 서버에 접근하려면,
네트워크 환경에서 새 연결을 설정하거나,
net use o: \\삼바서버아이피\삼바공유폴더이름 비밀번호 /user:네트워크사용자아이디
로 연결하면 되고,
삭제는 net use o: /delete
로 하면 된다.
====================================================================================
그외의 다양한 삼바 설정법은 다음과 같다.
▶ 네트워크 사용자 추가/편집/삭제 하는 법
☞ 네트워크 사용자 추가하기
sudo smbpasswd -a 네트워크사용자아이디 sudo vim /etc/samba/smbusers 를 한 후에, 아래의 내용을 추가한다. 네트워크사용자아이디 = "network username"
|
☞ 네트워크 사용자 편집
sudo smbpasswd -a 네트워크사용자아이디
|
☞ 네트워크 사용자 삭제
sudo smbpasswd -x 네트워크사용자아이디
|
----------------------------------------------------------------------------------
▶ 읽기 전용으로 폴더 공유하기 (인증=Yes)
sudo vim /etc/samba/smb.conf 로 설정파일을 열고
|
아래의 내용을 찾아서
아래처럼 바꾼다
security = user username map = /etc/samba/smbusers
|
아래 내용의 앞에 있는 주석 표시를 제거한다.
;[homes] ;comment = Home Directories ;browseable = no ;valid users = %S ;writable = yes
|
삼바설정을 확인한다.
삼바를 다시 시작한다.
sudo /etc/init.d/samba restart
|
----------------------------------------------------------------------------------
▶ 읽기/쓰기 권한으로 폴더 공유하기 (인증=Yes)
설정파일 안의 지정된 폴더에 아래의 옵션을 넣어준다.
[MyFolder] path = /home/my_id/my_shared_folder writable = yes
|
----------------------------------------------------------------------------------
▶ 그룹 폴더들을 읽기 전용으로 공유하기 (인증=Yes)
sudo mkdir /home/group sudo chmod 777 /home/group/ sudo vim /etc/samba/smb.conf
|
설정파일에서 아래의 내용을
아래처럼 바꾸고
security = user username map = /etc/samba/smbusers
|
설정파일의 끝에 아래의 내용을 추가한다.
[Group] comment = Group Folder path = /home/group public = yes writable = no valid users = system_username1 system_username2 create mask = 0700 directory mask = 0700 force user = nobody force group = nogroup
|
----------------------------------------------------------------------------------
▶ 그룹 폴더를 읽기/쓰기 권한으로 공유하기 (인증=Yes)
설정파일의 끝에 추가된 그룹 설정을 아래처럼 바꾼다.
[Group] comment = Group Folder path = /home/group public = yes writable = yes valid users = system_username1 system_username2 create mask = 0700 directory mask = 0700 force user = nobody force group = nogroup
|
----------------------------------------------------------------------------------
▶ 공개 폴더를 읽기 전용으로 공유하기 (인증=Yes)
[global] security = share
[public] comment = Public Folder path = /home/public public = yes writable = no create mask = 0777 directory mask = 0777 force user = nobody force group = nogroup
|
아래처럼 nobody 계정을 만든다.
----------------------------------------------------------------------------------
▶ 공개 폴더를 읽기/쓰기 권한으로 공유하기 (인증=Yes)
[global] security = share
[public] comment = Public Folder path = /home/public public = yes writable = yes create mask = 0777 directory mask = 0777 force user = nobody
force group = nogroup
|
----------------------------------------------------------------------------------
▶▶▶ 네트워크 프린터에서 인쇄하기
삼바 설정파일에 다음의 내용을 추가하고
printing = cups printcap name = cups
|
프린터 관리 서비스를 다시 시작한다.
sudo /etc/init.d/cupsys restart
|
----------------------------------------------------------------------------------
▶▶▶ 웹을 통해 삼바 설정 관리하기 : SWAT : Samba Web Administration Tool
▶ INETD과 SWAT 를 설치한다.
sudo apt-get install netkit-inetd swat
|
☞ inetd daemon 설정을 편집한다.
☞ 아래의 내용을 찾아서
<#off#> swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat
|
☞ 아래처럼 바꾸어 준다.
swat stream tcp nowait.400 root /usr/sbin/swat swat
|
☞ 데몬을 재시작한다.
sudo /etc/init.d/inetd restart
|
☞ 만일, root비밀번호를 설정하지 않았다면, 아래처럼 설정한다.
sudo passwd root
주:가급적인 root 루트비번을 설정하지 않는게 좋다. (없어도 접속 잘 된다)
|
☞
http://localhost:901 주소로 접속한다.
* 피시넷님에 의해서 게시물 이동되었습니다 (2010-05-05 17:50)
PS:삼바 설정 사례
[Storage] path = /home/Shared browseable = yes writable = yes read only = no create mask = 0770 directory mask = 0770
[Program] path = /home/Program browseable = no writable = yes read only = no create mask = 0770 directory mask = 0770 valid users = 허용할ID [Private] path = /home/Private browseable = no writable = no read only = no create mask = 0700 valid users = 허용할ID directory mask = 0700
|