자료 출처 :
http://www.brennan.id.au/18-Samba.html#smbclient
참고로 samba 관련 많은 방법들이 여기 있으니 참고하시길...
다만, 자료는 모두 영어로 되어 있음.
linux 에서 samba 서버에 접근하여 연결하고자 할 때 다음을 따라 하면 된다.
1. samba 서버 상태 확인.
자신의 계정이 alice 이고, 도메인이 galaxy 인 경우.
(윈도우에서 \\galaxy 하면 접근이 되는 경우. )
[bash]# smbclient -U alice -L galaxy
를 입력하면 해당 서버의 상태가 나오게 된다.
-U를 이용하여 계정을 넣지 않으면 default 는 root 가 된다.
Domain=[GALAXY] OS=[Unix] Server=[Samba 3.0.10-2]
Sharename Type Comment
--------- ---- -------
Shared Disk Global Share - All Users
SmallGroup Disk Small Share - Few Users
Financial Disk RESTRICTED - Financial Cell
FTP-Server Disk READ ONLY - Corp FTP Server
IPC$ IPC IPC Service (Samba Server)
ADMIN$ IPC IPC Service (Samba Server)
bubblejet Printer HP PhotoSmart 7200 Series
laser Printer Brother HL-1430 Laser Printer
alice Disk Home Directory
Domain=[GALAXY] OS=[Unix] Server=[Samba 3.0.10-2]
Server Comment
--------- -------
Workgroup Master
--------- -------
MYGROUP GALAXY
위와 같은 상세가 나오게 된다면 sharename 의 이름을 쓸 수 있다는 것이다.
2. 연결
그러면 다음과 같은 방법으로 연결을 하도록 하자.
[bash]# smbmount //winbox1/Shared /media/winbox1/shared -o guest
[bash]# smbmount //winbox1/C$ /media/winbox1/cdrive -o username=administrator
[bash]# mount -t smbfs //winbox1/C$ /media/winbox1/cdrive -o username=administrator
첫번째는 guest 접근. winbox1 의 Shared 에 접근하고, 자신의 local (linux PC) 의 /media~~~~ 의 주소에 연결한 것이다.
두번째, 세번째는 동일한데, winbox1 의 C 드라이브에 연결, 자신의 local 의 /media~~~ 에 연결한 것이며 id를 administrator 로 한 것이다.
(이럴 경우 password 를 묻게 된다. )
[bash]# smbmount //winbox1/C$ /media/winbox1/cdrive -o username=administrator,password="secret"
이것은 비밀번호 까지 설정한 상태.
3. 연결 해지.
심심하면 mount 명령 한번 해보자.
위의 두, 세번째 명령이 같다는 것은 smbmount 는 결국 mount 를 이용하여 연결 함을 알 수 있다.
연결해제를 하려면 당연 umount 를 이용, 연결해제 할 수 있다.
[bash]# umount /media/winbox1/cdrive
이런 식으로 자신의 mount 된 경로를 이용하여 mount 해제 할 수 있다.
4. root user 가 아닌 경우
참조 :
Ubuntu: smbmount: mount error(1)
root user 가 아니면 mount.cifs umount.cifs 의 권한 문제로 위의 명령들이 실행되지 않는다.
다음과 같은 error 가 발생 할 경우.
mount error(1): Operation not permitted
다음과 같이 명령어를 이용, 권한을 부여하도록 하자.
먼저 위치를 확인.
which smbmount
which smbumount
실행하면 경로가 나온다. (ex. /usr/bin/smbmount )
그러면 해당 경로를 다음과 같이 실행.
sudo chmod +s 경로+실행명
ex : sudo chmod +s /usr/bin/smbmount
같은 방법으로 smbumount 도 설정.
ex : sudo chmod +s /usr/bin/smbumount
추가)
mount.cifs: permission denied: no match for ~~~~~~ found in /etc/fstab
의 에러 메시지가 뜨는 경우...
혹시 ubuntu 10.10 이상의 버전을 쓰고 있지 않은가?
(외국의 포럼에서는 10.04 -> 10.10 upgrade 시 발생했다고 나오고 있음..
출처 :
https://bugs.launchpad.net/ubuntu/+source/cifs-utils/+bug/657900 )
권한 관련으로 sudo 를 해서 실행을 해야만 진행이 된다.
smbmount 와 umount 앞에 sudo 를 살짝 붙여넣고 쓰도록 하자.