LINUX 使用 smbclient 獲取windows 共享目錄的檔案 詳解
安裝samba(sudo apt-get install samba) ,smbclient(sudo apt-get install smbclient)
網上的教程還說要裝一個smbfs(sudo apt-get install smbfs)。但實際執行的時候會報這個報已經被取代。所以不裝也沒事。
然後配置samba配置檔案
sudo gedit /etc/samba/smb.conf
要把workgroup=workgroup, 工作組要配對
首先用-L 命令檢視遠端伺服器共享的目錄:
smbclient
-L //192.168.1.108/ -U username%password
smbclient
-L 192.168.1.108 -U username%password
上面的兩條命令分別用了FTP的地址表達格式和IP地址的表達方式,在ubuntu13.04下親測兩種都行。
然後可以看到遠端伺服器上的共享目錄都被列了出來:
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk 遠端管理
C$ Disk 預設共享
E$ Disk 預設共享
F$ Disk 預設共享
forshare Disk
IPC$ IPC 遠端 IPC
此外,還會報錯:
session request to 192.168.1.108 failed (Called name not present)
session request to 192 failed (Called name not present)
session request to *SMBSERVER failed (Called name not present)
NetBIOS over TCP disabled -- no workgroup available
不用管它。
然後就可以去訪問具體的目錄:
smbclient //192.168.1.108/directory -U username%password
然後進入smb的子shell:
smb: \>
在其中可以用cd(進入目錄),ls(羅列檔案和資料夾),get(下載檔案),put(上載檔案) 等命令進行 相應操作。
注意:在哪一個目錄下執行smbclient,smb就會把下載的檔案放到該目錄下,某些目錄建立檔案需要許可權,要sudo smbclient //ip/dir -U username%psd