【NAS】Samba常用命令

 

1     Smbclient命令

smbclient smbclient命令网络服务器 smbclient命令属于samba套件,它提供一种命令行使用交互式方式访问samba服务器的共享资源。

smbclient(选项)(参数)

 

1.1     选项

-B:传送广播数据包时所用的IP地址;

-d<排错层级>:指定记录文件所记载事件的详细程度;

-E:将信息送到标准错误输出设备;

-h:显示帮助;

-i<范围>:设置NetBIOS名称范围;

-I:指定服务器的IP地址;

-l <记录文件>:指定记录文件的名称;

-L:显示服务器端所分享出来的所有资源;

-M:可利用WinPopup协议,将信息送给选项中所指定的主机;

-n:指定用户端所要使用的NetBIOS名称;

-N:不用询问密码;

-O <连接槽选项>:设置用户端TCP连接槽的选项;

-p:指定服务器端TCP连接端口编号;

-R <名称解析顺序>:设置NetBIOS名称解析的顺序;

-s <目录>:指定smb.conf所在的目录;

-t <服务器字码>:设置用何种字符码来解析服务器端的文件名称;

-T:备份服务器端分享的全部文件,并打包成tar格式的文件;

-U <用户名称>:指定用户名称;

-w <工作群组>:指定工作群组名称。

 

1.2     参数

smb服务器:指定要连接的smb服务器。

 

1.3     实例

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

smbclient -L198.168.0.1 -U username%password

 [root@node2~]# smbclient -L 192.168.192.91 -U smbuser1%smbuser1

Domain=[YYGROUP] OS=[Windows 6.1] Server=[Samba4.2.3]

 

    Sharename       Type     Comment

    ---------       ----     -------

    yysmb01         Disk      yynfs01

    yysmb02         Disk      yynfs02

    IPC$            IPC       IPC Service (YY-SMB-Server(4.2.3))

Domain=[YYGROUP] OS=[Windows 6.1] Server=[Samba4.2.3]

 

    Server               Comment

    ---------            -------

 

    Workgroup            Master

    ---------            -------

[root@node2 ~]#

像ftp客户端一样使用smbclient

smbclient //192.168.0.1/tmp -U username%password

[root@node2 ~]# smbclient //192.168.192.91/yysmb01-U smbuser1%smbuser1

Domain=[YYGROUP] OS=[Windows 6.1] Server=[Samba4.2.3]

smb: \>

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

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

直接一次性使用smbclient命令

[root@node2 ~]# smbclient -c "ls"//192.168.192.91/yysmb01 -U smbuser1%smbuser1

Domain=[YYGROUP] OS=[Windows 6.1] Server=[Samba4.2.3]

  .                                   D        0 Mon Nov 28 09:37:43 2016

  ..                                  D        0 Mon Nov 28 09:37:51 2016

 

        18555904blocks of size 1024. 12997228 blocks available

[root@node2 ~]#

[root@node2 ~]# smbclient //192.168.192.91/yysmb01-U smbuser1%smbuser1

Domain=[YYGROUP] OS=[Windows 6.1] Server=[Samba4.2.3]

smb: \> ls

  .                                   D        0 Mon Nov 28 09:37:43 2016

  ..                                  D        0 Mon Nov 28 09:37:51 2016

 

        18555904blocks of size 1024. 12997488 blocks available

smb: \>

功能一样的。

创建一个共享文件夹

[root@node2 ~]# smbclient -c "mkdirshare1" //192.168.192.91/yysmb01 -U smbuser1%smbuser1

Domain=[YYGROUP] OS=[Windows 6.1] Server=[Samba4.2.3]

NT_STATUS_ACCESS_DENIED making remote directory\share1

[root@node2 ~]#

如果用户共享//192.168.0.1/tmp的方式是只读的,会提示NT_STATUS_ACCESS_DENIED making remote directory /share1

 

1.4     问题跟踪

1.4.1  NT_STATUS_IO_TIMEOUT

日志如下:

[root@node1 ~]# smbclient -L 198.168.192.91 -Usmbuser1%smbuser1

Connection to 198.168.192.91 failed (ErrorNT_STATUS_IO_TIMEOUT)

 

解决办法:在/etc/samba/lmhosts添加相应节点的ip和netbios name。

[root@node1 ~]# cat /etc/samba/lmhosts

127.0.0.1 localhost

192.168.192.91 YY_SMB_NODE1

 

 

2     smbstatus命令

此程序是 samba 套件的一部分。smbstatus 是个非常简单的程序,用于列示当前 samba 的联接状态。

smbstatus [-b][-d] [-L] [-p] [-S] [-s configuration file] [-u username]

 

2.1     选项

-b :指定只输出简短的内容。

-d :指定以详细方式输出内容。

-L :让 smbstatus 只列出 /var 目录中的被锁定项。

-p :用这个参数来列出 smbd进程的列表然后退出。对脚本编程很有用。

-S :让 smbstatus 只列出共享资源项。

-s configurationfile :用这个参数指定一个配置文件。当然在编译时已做好了默认的配置文件。文件中包含了服务需要的详细配置信息。参见 smb.conf(5)获得更多信息。

-u username :用这个参数来查看只与username 用户对应的信息。

2.2     实例

列出某个用户所使用的的共享文件夹

 

[root@node1 ~]# smbstatus -u smbuser1

 

Samba version 4.2.3

PID    Username      Group         Machine            Protocol Version      

------------------------------------------------------------------------------

21697     smbuser1     smbuser1      192.168.192.92(ipv4:192.168.192.92:37074) NT1        

 

Service     pid     machine       Connected at

-------------------------------------------------------

yysmb01     21697   192.168.192.92  Tue Nov 29 09:28:42 2016

 

No locked files

 

[root@node1 ~]#

 

 

2.3     Pdbedit命令

pdbedit命令来建立Samba账户。

Usage:[OPTION...]

2.3.1  参数

-a username:新建Samba账户。

-x username:删除Samba账户。

-L:列出Samba用户列表,读取passdb.tdb数据库文件。

-Lv:列出Samba用户列表的详细信息。

-c “[D]” –u username:暂停该Samba用户的账号。

-c “[]” –u username:恢复该Samba用户的账号。

 

2.3.2  实例

查询smb用户列表

[root@node1 ~]# pdbedit -L

nisuser1:1001:

smbuser1:1006:




你可能感兴趣的:(数据存储)