검색 엔진의 방문이 늘어나고 있군...

Posted
Filed under 프로그램과 명령어/서버와 서비스
참조 원문 : The easiest way to set up Samba for file-sharing

  이름을 처음 듣는 사람은 꼭 한 번 웃거나 잘못들은 줄 알고 다시 물어보는 그 삼바 서버입니다. 파일 서버나 프린터 서버 역할을 수행할 수 있지요. 리눅스, BSD, OS X 끼리의 호환은 물론이고 윈도우의 파일과 프린터 공유 프로토콜을 사용하기 때문에 윈도우와도 호환이 된다는 것은 이 프로그램의 가치를 크게 높입니다. 또한 버전 4부터는 엑티브 디렉토리의 서버로도 사용할 수 있다니 대단하지만 어쨌든 이 포스트에서 중요한 건 그게 아니고...

  일단 여기서는 단순한 파일 서버를 구축하는 것이 목표이므로 일단 삼버를 설치합니다. 설정 파일은 /etc/samba/smb.conf 파일인데 만약 RHEL이나 페도라에서 SELinux 기능을 사용하고 있다면 추가적으로 몇 가지 작업을 해야 하며 그 내용은 설정 파일에 주석으로  적혀 있습니다. 어찌 됐든 간단한 설정 파일을 만들어보자면 아래와 같습니다.
[global]

workgroup = WORKGROUP

server string = Samba Server Version %v

log file = /var/log/samba/log.%m

max log size = 50

security = user

passdb = tdbsam

[homes]

comment = Home Directories

browseable = no

writable = yes
  내용은 인증 방식을 계정 방식(security = user)으로 사용하고 존재하는 모든 사용자의 홈 디렉토리를 공유한다는 내용입니다. 물론 마음대로 드나들 수 있는 건 아니고 인증을 통해 해당 홈 디렉토리에 접근할 수 있는 사용자임을 증명해야 합니다.

  먼저 워크그룹명을 'workgroup'이 아닌 다른 걸로 사용하고 있다면 사용하고 있는 워크그룹명으로 변경합니다. 또한 삼바는 시스템의 인증 방법(PAM 등)을 그대로 사용하지 않기 때문에 계정별로 삼바용 패스워드를 따로 설정해야 합니다. 이것은 시스템에 접근하기 위한 패스워드가 아닌 삼바 파일 서버에 접근할 때 쓰는 패스워드이므로 햇갈리지 않도록 합시다. 삼바용 패스워드를 설정하는 명령어는 아래와 같습니다.
# smbpasswd -a 계정명
  패스워드를 집어넣고 상콤하게 삼바 서비스를 리스타트시킵니다.
# service samba start
또는
# service smb start
  네트워크에 다른 리눅스(또는 BSD나 OS X) 시스템이 있다면 거기서 아래의 명령어를 통해 특정 시스템의 공유 자원들을 볼 수 있습니다. '\\localhost' 부분에 특정 호스트의 IP나 호스트명을 넣으시면 됩니다. 물어보는 패스워드는 해당 계정의 시스템 패스워드가 아닌 삼바 패스워드입니다.
mirashi@myservlab:/etc/samba$ smbclient -L \\localhost
Enter mirashi's password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.4.0]

        Sharename       Type      Comment
        ---------       ----      -------
        homes           Disk      Home Directories
        print$          Disk      Printer Drivers
        IPC$            IPC       IPC Service (myservlab server (Samba, Ubuntu))
        mirashi         Disk      Home Directories
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.4.0]

        Server               Comment
        ---------            -------
        MYSERVLAB            myservlab server (Samba, Ubuntu)
        PLANET-EARTH        

        Workgroup            Master
        ---------            -------
        WORKGROUP            MYSERVLAB
  이제 모든 준비가 끝났습니다. 이제 GNOME의 네트워크 브라우저(리눅스), 파인더(OS X), 윈도우 익스플로러(윈도우)에서 주소줄에 '\\IP주소(또는 호스트명)\계정명'를 입력하고 로그인 창에서 계정명과 패스워드를 집어넣으면 공유한 디렉토리에 접근할 수 있습니다.

  배포판과 삼바의 버전에 따라 설정 파일의 옵션이 조금씩 다를 수 있으니 주석을 잘 참고하도록 합시다. 예를 들어 저의 경우엔 'writable = yes' 대신 'read only = yes'로 되어 있었습니다.


2010/11/17 17:56 2010/11/17 17:56