더북(TheBook)

파일 공유 실습하기: 누구나 사용 가능한 공유 디렉터리 설정하기

  1 기본적인 설정 내용을 수정해서 삼바 서버를 운영해보겠습니다. 삼바 설정 파일을 vi로 엽니다.

administrator@server01:~$ sudo vi /etc/samba/smb.conf

  2 공유 디렉터리 항목을 추가합니다. public이라는 공유 디렉터리를 생성하고자 합니다. 공유 디렉터리 경로는 /srv/samba/public, 네트워크 탐색이 가능하고( browsable = yes), 익명 사용자에 대한 접근을 허용하며( guest ok = yes), 읽기 쓰기 권한을 부여하고( read only = no), 파일을 생성하면 기본적으로 접근 권한을 755( rwxr-xr-x)으로 설정하게 됩니다( create mask = 0755).

[public]
  comment = Public File Share
  path = /srv/samba/public
  browsable = yes
  guest ok = yes
  read only = no
  create mask = 0755
Tip

‘read only = yes’ 옵션은 디렉터리를 읽기 전용으로 공유합니다. 이 옵션은 ‘writeable = no’ 옵션과 동일하게 동작합니다. 디렉터리에 쓰기 권한을 부여하기 위해서는 ‘read only = no’ 또는 ‘writeable = yes’ 옵션을 사용합니다.

  3 변경된 설정 내용을 반영하기 위해 삼바 서버를 재시작합니다. nmbd는 삼바의 윈도 네트워크 검색, 목록 확인을 위한 데몬으로 재시작할 필요가 없습니다.

administrator@server01:~$ sudo service smbd restart
이렇게 하세요!

물론 samba 서비스를 재시작해도 변경된 내용이 반영됩니다.

administrator@server01:~$ sudo service samba restart

  4 공유할 디렉터리를 생성하고 공유 디렉터리의 소유권을 nobody:nogroup으로 설정해서 익명 사용자가 공유 디렉터리를 읽고 쓸 수 있도록 만들어줍니다.

administrator@server01:~$ sudo mkdir -p /srv/samba/public
administrator@server01:~$ sudo chown nobody:nogroup /srv/samba/public
administrator@server01:~$ ls -l /srv/samba
drwxr-xr-x 2 nobody nogroup 4096 Apr 2 06:28 public

  5 윈도 게스트를 시작합니다.

shinjaehun@losttemple:~$ virsh start winvm01
shinjaehun@losttemple:~$ vv winvm01
이렇게 하세요!

virt-viewer를 이용해서도 접속할 수도 있습니다.

shinjaehun@losttemple:~$ virt-viewer -c qemu:///system virt-viewer &

  6 탐색기를 실행하여 ➊ ‘네트워크’를 클릭합니다. 처음 네트워크를 검색한다면 네트워크 검색 및 파일 공유를 활성화시켜야 합니다. ➋ ‘네트워크 검색 및 파일 공유 설정’을 선택합니다.

그림 7-14 네트워크 검색 및 파일 공유 활성화

  7 삼바 서버가 실행 중인 server01이 네트워크 목록에 표시되며 다시 server01을 더블클릭하면 공유 디렉터리인 public을 확인할 수 있습니다. guest ok = yes 옵션이 설정되어 있기 때문에 공유 디렉터리에 접근하기 위한 사용자 인증 과정은 생략합니다 (삼바는 공유 폴더에 접근하는 모든 사용자를 nobody로 처리합니다).

그림 7-15 SERVER01의 공유 디렉터리 public

  8 공유 디렉터리(/srv/samba/public)의 소유권은 nobody로 설정되어 있으며, 소유자에게 쓰기 권한이 있어(drwxr-xr-x) 누구나 공유 디렉터리에 파일을 복사할 수 있습니다.

그림 7-16 공유 디렉터리의 파일 복사
이렇게 하세요!

권한이 필요하다는 오류가 발생하면 공유 디렉터리의 소유권과 접근 권한을 다시 확인해보기 바랍니다.

그림 7-17 공유 폴더에 쓰기 권한이 없어 거부됨

소유권은 nobody:nogroup으로 익명 사용자 접근이 가능해야 하며, 접근 권한은 drwxr-xr-x로 소유자가 읽기 쓰기가 가능해야 합니다.

administrator@server01:~$ ls -l /srv/samba
drwxr-xr-x 2 nobody nogroup 4096 Apr 2 06:28 public
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.