리눅스에서 삼바를 마운트하기 (Mount CIFS)
윈도우에서 공유한 폴더를 리눅스 (우분투 (Ubuntu))에서 내 디렉토리로 연결할 수 있다. 우분투에서는 smbfs 가 아닌 CIFS(Common Internet File System) 를 사용함.
설치
일단 smbclient 가 설치되어 있지 않으면 설치한다.
sudo apt-get install smbclient cifs-utils
사전조사
아래 명령어로 연결할 컴퓨터를 조사해본다. 주소는 접속할 컴퓨터의 주소.
smbclient -L 192.168.0.111 -U%
Domain=[VASLORNET] OS=[Unix] Server=[Samba 4.1.18] Sharename Type Comment --------- ---- ------- music Disk System default shared folder photo Disk System default shared folder video Disk System default shared folder web Disk System default shared folder IPC$ IPC IPC Service () Domain=[VASLORNET] OS=[Unix] Server=[Samba 4.1.18] Server Comment --------- ------- BOX VASLOR Sam Workgroup Master --------- ------- VASLORNET VASLOR
이와 비슷하게 나온다.
연결
아래 명령어로 마운트 할 수 있다.
sudo mount -t cifs //컴퓨터이름(혹은 주소)/공유이름 /공유할/디렉토리
공유할 디렉토리는 미리 만들어 놔야 한다.
sudo mkdir /mnt/share
하지만 몇 가지 문제가 있을 수 있다.
암호
아이디와 암호를 입력해야하는 공유 폴더라면 username 과 password 옵션을 추가해줘라.
-o username=계정이름,password=암호
코드페이지
서버쪽이 Utf-8이 아니라서 한글이 깨져 나온다면 다음 옵션을 추가한다.
-o iocharset=utf8,codepage=cp949
권한
폴더는 공유가 되었지만 마운트한 디렉토리는 root권한으로만 접근이 가능하다면 다음 옵션을 추가한다.
-o uid=자신의uid,gid=자신의gid
자신의 uid 와 gid 는 아래의 방법으로 알 수 있다. 아래 결과의 1000 1000 부분이 uid 와 gid 임.
cd ~ ls -n
합계 4 -rwxr-xr-x 1 1000 1000 125 2006-02-11 15:48 smbmount.sh
홈으로 가서 자신이 만든 파일들의 uid,gid를 보는 것이다.
최종
sudo mount -t cifs -o username=계정이름,password=암호,uid=자신의uid,gid=자신의gid,iocharset=utf8,codepage=cp949 //컴퓨터이름(혹은 주소)/공유이름 /공유할/디렉토리