1. 程式人生 > >LINUX 使用 smbclient 獲取windows 共享目錄的檔案 詳解

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