1、假設Win的配置以下:
主機名:PC-20121022VZUR;

圖一
IP地址:10.8.8.181;

圖二
把E:\film開啓了共享;

圖三
2、要是Linux經過smbclient來訪問Win的共享,要作以下幾步:
1.先在Linux端探測,找出Win端的這個E:\film共享到底叫作什麼名字,這裏的意思就是說,你共享某個目錄,而後這只是一個共享(名字能夠任意),當你共享另外一個目錄時,那又是另外一個共享。因此咱們須要去探測究竟共享出來給客戶端看到的名字是什麼。
[root
@localhost /]#
smbclient -L //PC-20121022VZUR -U Administrator
//這裏-U是指定Win端開放
某目錄共享時,enable的用戶名
Enter Administrator's password:
//這裏輸入用戶名的密碼
Domain=[PC-20121022VZUR] OS=[Windows 7 Ultimate 7601 Service Pack 1] Server=[Windows 7 Ultimate 6.1]
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk 遠程管理
C$ Disk 默認共享
D$ Disk 默認共享
E$ Disk 默認共享
film Disk
//這個就是咱們偵測到的結果,原來E:\film共享後的名字叫作film
IPC$ IPC 遠程 IPC
Users Disk
Domain=[PC-20121022VZUR] OS=[Windows 7 Ultimate 7601 Service Pack 1] Server=[Windows 7 Ultimate 6.1]
Server Comment
--------- -------
Workgroup Master
--------- -------
[root
@localhost /]#
2.而後登錄到Win端的film共享上去:
[root
@localhost /]#
smbclient //PC-20121022VZUR/film -U Administrator
Enter Administrator's password:
//這裏輸入用戶名的密碼
Domain=[PC-20121022VZUR] OS=[Windows 7 Ultimate 7601 Service Pack 1] Server=[Windows 7 Ultimate 6.1]
smb: \>
//請注意,這裏的prompt都變了,以前是"[root@localhost /]# "的,如今是"smb: \> "
3.接下來就能夠從film共享裏面拉去文件到Linux指定的目錄了,在"smb: \> "的界面,咱們可使用常見的shell命令:ls等等。
smb: \>
get Homeland.S02E12.mp4 /home/michael/Homeland.S02E12.mp4
//使用get命令,把film共享
下的Homeland.S02E12.mp4 拷貝到當前Linux系統的/home/michael/Homeland.S02E12.mp4
getting file \Homeland.S02E12.mp4 of size 317533276 as /home/michael/Homeland.S02E12.mp4
(1370.0 KiloBytes/sec) (average 1370.0 KiloBytes/sec)
smb: \>
//你要等文件傳輸完畢才能看到這行,意思說傳輸過程當中,當前prompt是阻塞的
PS:
1.Win的文件裏面很容易出現空格,例如:想進入Youku Files目錄,應該輸入cd Youku\ Files才行,意思就是空格用 back slash+空格 替代。
2.當Win的文件名裏面出現漢字時,會沒法訪問,暫時我經過更名成英文來逃避。3.get 後面不帶目的地路徑,會放到當前Linux用戶的家目錄。 shell