[우분투] samba로 파일서버 구축 Computer Tip

최근에 파일서버로 사내에서 돌리던 PC가 망가지는 일이 생겼습니다.
그래서 다시 구축하는데 다시 약간 찾는 경우가 생겨 다음에 또 구축하는 것을 대비하여 이렇게 정리해 봅니다.

1) 파일 서버 설치
우분투 서버 10.04.3 LTS (i386 서버 버전) 버전을 설치했습니다.
데스크탑이 아니라 서버로 구축을 했습니다. 
(PC 형태지만, 콘솔이 안 물리기 때문이지요)

설치시에 필요한 서버로는 "OpenSSH서버, Samba 파일서버" 두 개를 선택했습니다.

2) 하드가 새롭게 추가되는 경우

2.1) 추가된 디스크 검색
$ sudo fdisk -l
위의 명령으로 새롭게 추가된 디스크를 확인합니다.

2.2) 디스크 초기화 (선택사항)
만약 /dev/sdc 디스크가 새롭게 추가되었다면,
$ sudo fdisk /dev/sdc
로 새로운 파티션을 생성합니다 (아마도 /dev/sdc1)

그 다음 포맷합니다.

$ sudo mkfs.ext4 /dev/sdc1

2.3) auto mount

$ ls -l /dev/disk/by-uuid/
합계 0
lrwxrwxrwx 1 root root 10 2012-02-24 16:40 3a3d97d8-0579-4fcc-9905-f1272249593c -> ../../sda5
lrwxrwxrwx 1 root root 10 2012-02-24 16:40 B69EAFF39EAFA9F7 -> ../../sdc1
lrwxrwxrwx 1 root root 10 2012-02-24 16:40 b970f679-b121-4935-97f1-42da189219b5 -> ../../sdd1
lrwxrwxrwx 1 root root 10 2012-02-24 16:40 f8f8a741-d451-4824-9cc0-b6e706c91f17 -> ../../sdb1
lrwxrwxrwx 1 root root 10 2012-02-24 16:40 faeffb01-4bdd-4bc1-a53d-830d0a785ca4 -> ../../sda1

위와 같은 명령으로 디스크 파티션 ID를 확인합니다.

마운트 시킬때 UUID로 마운트 하면 가장 좋은 점 중의 하나는,
새롭게 디스크 구성을 바꾸어 sdc1 => sdd1 등으로 변경이 되어도 자동으로 찾아준다는 것이지요.

$ sudo mkdir /mnt/CQ_500G
(... 미리 필요한 mount 포인트 디렉터리 /mnt/ 아래에 만들어 놓습니다)

$ sudo vi /etc/fstab
UUID=f8f8a741-d451-4824-9cc0-b6e706c91f17 /mnt/CQ_1.5T               ext4    errors=remount-ro 0       1
UUID=b970f679-b121-4935-97f1-42da189219b5 /mnt/CQ_1T               ext4    errors=remount-ro 0       1
UUID=B69EAFF39EAFA9F7 /mnt/CQ_500G               ntfs-3g    errors=remount-ro 0       1

만약 디스크가 NTFS이면 마지막 줄과 같이 합니다.

$ sudo mount -a

이렇게 하여 바뀐 fstab 이 적용되도록 합니다.

2.4) samba에 추가
$ sudo vi /etc/samba/smb.conf

[work]
comment = share samba
path = /mnt/CQ_500G
writeable = yes
guest ok = no
create mask = 0644
directory mask = 0755

위와 같은 항목을 추가시킵니다.

$ sudo /etc/init.d/smbd restart

만약 samba를 처음 기동시킨다면,

위의 conf 파일 중,

global에서

   workgroup = ....(자신의 workgroup으로 변경)

   dos charset = CP949
   display charset = UTF8
   unix charset = UTF8

   dns proxy = no
   password server = None
   username map = /etc/samba/smbusers

   security = user
   passdb backend = tdbsam
   obey pam restrictions = yes

   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

정도로 확인합니다.

또한 접속할 사용자를

$ sudo smbpasswd -a smbuser

명령으로 사용자와 암호를 추가한 다음 samba를 재기동 시킵니다.




보안에 특별히 신경쓰지 않은 이유는,

파일서버 자체에 gateway를 지정하지 않아 내부 밖에 통신이 안되도록 했기 때문입니다... ^^


덧글

  • bergi10 2012/02/24 17:32 # 답글

    음... 게이트웨이를 별도로 설정해 스트리밍 서버로도 운영이 가능할까요?

  • 지훈현서아빠 2012/02/24 20:59 #

    제가 별도의 스트리밍 서버나 서비스는 운영하지 않았지만 일전에 webDAV를 통하여 스트리밍이
    되는 것을 확인한 적이 있는 것 같습니다만...
  • sg 2012/02/28 05:03 # 삭제 답글

    안녕하세요
    현재 우분투 10.04로 윈도우 xp공유폴더에 접근하려하는데 tree connect failed : NT_STATUS_ACCESS_DENIED라고 뜨는데 확어떻게 처리하나요??

    목표는 파일을 가져오는건데,,,, rpm -qa | grep samba로 검색을해도 파일들이 검색이 안되구요,,ㅠㅠ 어떻게 해야하나요,,

  • 지훈현서아빠 2012/02/28 15:37 #

    http://brianlee.tistory.com/87
    이곳을 참고하시면 될 것 같구요,
    우분투는 RedHat이나 Fedora 계열이 아니기 때문에 rpm 이 아니라 데비안 계열의 aptitude를 이용해야 합니다.
    $ dpkg -l | grep samba
    하셔서 설치된 패키지를 보시구요
    $ dpkg -L samba
    식으로 패키지의 설치된 파일 목록을 확인할 수 있습니다. 참고하셔요~
댓글 입력 영역

구글애드텍스트