samba的使用smbclient命令

smbclient用法 :

   参  数:
  [网络资源]  [网络资源]的格式为//服务器名称/资源分享名称。
  [密码]   输入存取网络资源所需的密码。
  -B<IP地址>   传送广播数据包时所用的IP地址。
  -d<排错层级>   指定记录文件所记载事件的详细程度。
  -E   将信息送到标准错误输出设备。
  -h   显示帮助。
  -i<范围>   设置NetBIOS名称范围。
  -I<IP地址>   指定服务器的IP地址。
  -l<记录文件>   指定记录文件的名称。
  -L   显示服务器端所分享出来的所有资源。
  -M<NetBIOS名称>   可利用WinPopup协议,将信息送给选项中所指定的主机。
  -n<NetBIOS名称>   指定用户端所要使用的NetBIOS名称。
  -N   不用询问密码。
  -O<连接槽选项>   设置用户端TCP连接槽的选项。
  -p<TCP连接端口>   指定服务器端TCP连接端口编号。
  -R<名称解析顺序>   设置NetBIOS名称解析的顺序。
  -s<目录>   指定smb.conf所在的目录。
  -t<服务器字码>   设置用何种字符码来解析服务器端的文件名称。
  -T<tar选项>   备份服务器端分享的全部文件,并打包成tar格式的文件。
  -U<用户名称>   指定用户名称。
  -W<工作群组>   指定工作群组名称。

smbclient //192.168.0.100/share -Uadministrator 回车后,会提示输入admin的密码.
之后就可以通过get获取了 192.168.0.100是我在windows主机的IP,share为共享名,-U后面是用户名

命令 说明 
?或help [command] 提供关于帮助或某个命令的帮助 
![shell command]   执行所用的SHELL命令,或让用户进入 SHELL提示符 
cd [目录]  切换到服务器端的指定目录,如未指定,则 smbclient 返回当前本地目录 
lcd [目录]  切换到客户端指定的目录; 
dir 或ls   列出当前目录下的文件; 
exit 或quit    退出smbclient 
get file1  file2 从服务器上下载file1,并以文件名file2存在本地机上;如果不想改名,可以把file2省略 
mget file1 file2 file3  filen 从服务器上下载多个文件; 
md或mkdir 目录 在服务器上创建目录 
rd或rmdir 目录 删除服务器上的目录 
put file1 [file2] 向服务器上传一个文件file1,传到服务器上改名为file2; 
mput file1 file2 filen 向服务器上传多个文件 

若windows中有一个共享文件夹Share,Windows用作服务器

要设置可以写的权限.

一):与Windows服务器建立连接   www.linuxso.com收集 谢绝转载.

smbclient  //192.168.0.100/Share  -u  administrator     

回车后,会提示输入admin的密码.
 

通过密码验证之后,

会出现:

smb:\>

这样子状态等待输入.

1.1  列出文件状态

 smb:\>ls

通过ls就可以看出当前所有文件状态

1.2 从windows中取得文件

若有文件bbb.log

则输入:

smb:\>get bbb.log

1.3若要所linux中的文件传输到windows之中

则文件在根目录下  文件名:linuxso.log

则输入:

smb:\.>put /linuxso.log    linuxso.log

 

1,列出某个IP地址所提供的共享文件夹

smbclient -L 198.168.0.1 -U username%password

 

2,像FTP客户端一样使用smbclient

smbclient //192.168.0.1/tmp  -U username%password

 

执行smbclient命令成功后,进入smbclient环境,出现提示符: smb:\>

这里有许多命令和ftp命令相似,如cd 、lcd、get、megt、put、mput等。通过这些命令,我们可以访问远程主机的共享资源。

 

3,直接一次性使用smbclient命令

smbclient -c "ls"  //192.168.0.1/tmp  -U username%password

smbclient //192.168.0.1/tmp  -U username%password

smb:\>ls

功能一样的

 

例,创建一个共享文件夹

smbclient -c "mkdir share1"  //192.168.0.1/tmp  -U username%password

如果用户共享//192.168.0.1/tmp的方式是只读的,会提示

NT_STATUS_ACCESS_DENIED making remote directory \share1

 

 

在Linux下,可以通过smbclient命令来实现相似的功能,访问Windows的某个共享目录。

 

 

 

使用平台:

Red Hat Enterprise Linux AS release 4

IP:192.168.1.197

 

Windows XP Professional SP2

IP:192.168.1.198

windows下的共享文件夹hello里面有个1.txt的文本文件

 

 

 

前提条件:

1、Windows和Linux共处于同一个局域网中,可以互相ping通,都未设置防火墙

2、Linux上安装有samba-client的RPM包,它是Samba客户端工具

 

 

 

在Linux下输入

#smbclient -L 192.168.1.198 -U administrator

Password:(输入windows系统所需要的密码)

列举出windows系统192.168.1.198上的所有共享目录

 

 

 

#smbclient //192.168.1.198/hello -U administrator

Password:(输入windows系统所需要的密码)

访问hello目录

 

 

 

#ls 列举出hello目录下的所有文件

 

 

 

#get 1.txt /opt/share/1.txt

将得到的文件复制到Linux系统的/opt/share/路径下。

 

 

 

将所有的文件获取完成后

#q  退出。

 

下面是RHCE考试题目中一道关于samba配置的题目

 

通过配置SMB共享/common目录:

1) 必须是STAFF工作组的一员

2) 共享名是common

3) common只对example.com可用

4) 用户harry可在example.com域内访问

5)用户harry的password为123abc

 

#yum install samba*

#chkconfig samba on

#service samba start

#smbpasswd -a harry

#setsebool -P samba_enable_home_dirs on(要不是共享家目录的话就不会影响)

#getsebool –l 

#chcon -t samba_share_t /common

#vim /etc/samba/smb.conf

workgroup = STAFF

[common]

comment = this is a test smb

path= /common

public=no

write list = harry

browseable = yes



加上在命令前加!会执行本地的命令 如 :
\>!pwd  是查询当前的本地所在目录
\>pwd  查询远端ftp所在目录
测试平台:
Red Hat Enterprise Linux AS release 3 (Taroon)
Windows 2000 Advanced Server SP4
当前测试条件:
1、 Windows和Linux共处于同一个局域网中,可以互相ping通,都未设置防火墙
2、 Windows的IP地址:192.168.60.188
3、 Linux的IP地址:192.168.60.189
4、 Windows上当前有如下共享:c$,temp(everyone具有读取权限)
5、 Windows上的用户有cmw(管理员组用户帐号),grp(管理员组用户帐号),guest(当前未启用),没有root帐号
6、Linux上安装有相关的RPM包:samba-client,它是Samba客户端工具
1、 访问c$共享:
[root@rh root]# smbclient //192.168.60.188/c$ -U cmw
Password:                                          
smb: \> cd winnt                                   
smb: \winnt\>
2、 访问temp共享(启用guest帐户)
[root@rh root]# smbclient //192.168.60.188/temp
Password:(未输入任何密码)
smb: \>
3、 访问temp共享(未启用guest帐户)
[root@rh root]# smbclient //192.168.60.188/temp
Password:(未输入任何密码)
Anonymous login successful                    
tree connect failed: NT_STATUS_ACCESS_DENIED  
[root@rh root]#
扩展研究:
1、 smbclient命令成功后,可以使用的命令及研究:
[root@rh root]# smbclient //192.168.60.188/temp -U cmw                   
Password:                                                                
smb: \> ?                                                                
  ? altname archive blocksize cancel
cd chmod chown del dir
du exit get help history
lcd link lowercase ls mask
md mget mkdir more mput
newer open print printmode prompt
put pwd q queue quit
rd recurse reget rename reput
rm rmdir setmode symlink tar
tarmode translate !
以上为可以使用的命令,常用命令如下:
1)        ?命令
smb: \> ? ?                                          
HELP ?:                                              
        [command] give help on a command             
语法:? [command]
功能:可以查看一个命令的使用方法
2)        cd命令
smb: \> ? cd                                         
HELP cd:                                             
        [directory] change/report the remote directory
smb: \> cd samba                                     
语法:cd [directory]
功能:改变远程目录
3)        du命令
smb: \samba\> ? du                                                
HELP du:                                                          
        <mask> computes the total size of the current directory
smb: \samba\> du
42293 blocks of size 1048576. 5098 blocks available
Total number of bytes: 16880894                                   
语法:du
功能:统计当前目录下文件总计大小,不包括子目录容量。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值