3.14. 使用 smbclient 实用程序访问 SMB 共享
smbclient 工具可让您访问 SMB 服务器中的文件共享,类似于命令行 FTP 客户端。例如,您可以使用它来向共享上传文件和从共享下载文件。
先决条件
-
samba-client
软件包已安装。
3.14.1. smbclient 互动模式如何工作
例如,使用 DOMAIN\user
帐户对在 server
上托管的example
共享进行身份验证:
# smbclient -U "DOMAIN\user" //server/example Enter domain\user's password: Try "help" to get a list of possible commands. smb: \>
在 smbclient
成功连接到共享后,工具进入互动模式并显示以下提示:
smb: \>
要在互动 shell 中显示所有可用命令,请输入:
smb: \> help
要显示特定命令的帮助信息,请输入:
smb: \> help command_name
其它资源
-
smbclient(1)
手册页
3.14.2. 在互动模式中使用 smbclient
如果您使用不带 -c
参数的 smbclient
,那么工具将进入交互模式。下面的步骤演示了如何连接到 SMB 共享并从子目录中下载文件。
流程
连接到共享:
# smbclient -U "DOMAIN\user_name" //server_name/share_name
进到
/example/
目录:smb: \>
d /example/
列出目录中的文件:
smb: \example\>
ls
. D 0 Thu Nov 1 10:00:00 2018 .. D 0 Thu Nov 1 10:00:00 2018 example.txt N 1048576 Thu Nov 1 10:00:00 2018 9950208 blocks of size 1024. 8247144 blocks available下载
example.txt
文件:smb: \example\>
get example.txt
getting file \directory\subdirectory\example.txt of size 1048576 as example.txt (511975,0 KiloBytes/sec) (average 170666,7 KiloBytes/sec)从共享断开:
smb: \example\>
exit
3.14.3. 在脚本模式中使用 smbclient
如果将 -c
参数传给 smbclient
,那么你可对远程 SMB 共享自动执行命令。这可让您在脚本中使用 smbclient
。
下面的步骤演示了如何连接到 SMB 共享并从子目录中下载文件。
流程
-
使用以下命令连接到共享,进到
example
目录,下载example.txt
文件:
# smbclient -U DOMAIN\user_name //server_name/share_name -c "cd /example/ ; get example.txt ; exit"