linux访问linuxsamba
❶ samba能实现linux与linux系统之间的文件共享吗
可以,Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
Linux可作为samaba服务器由windows客户端访问共享文件,这与Windows访问其它Windows计算机的方式是相同的协议。
如果访问samba服务器或Windows服务器共享文件的客户机是个Linux系统,可使用客户端软件smbclient,语法如下:
smbclient [网络资源][密码][-EhLN][-B<IP地址>][-d<排错层级>][-i<范围>][-I<IP地址>][-l<记录文件>][-M<NetBIOS名称>][-n<NetBIOS名称>][-O<连接槽选项>][-p<TCP连接端口>][-R<名称解析顺序>][-s<目录>][-t<服务器字码>][-T<tar选项>][-U<用户名称>][-W<工作群组>]
参数:
[网络资源] [网络资源]的格式为//服务器名称/资源分享名称。
[密码] 输入存取网络资源所需的密码。
-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<工作群组> 指定工作群组名称。
❷ 为什么我电脑连不上Linux系统的samba
linux端的配置:
1. 关闭防火墙,或开启防火墙中samba服务需要的端口(打开配置界面会看到的)
2. 从新启动smb和nmb服务(root用户下操作):
/etc/init.d/smb stop
/etc/init.d/smb start
/etc/init.d/nmb stop
/etc/init.d/nmb start
看服务是否启动:
pgrep smbd
pgrep nmbd
打开samba配置界面,首选项-》服务器设置-》基本,工作组写MSHOME,描述请便,
安全性为“共享”,加密密码“是”,来宾账号设为你现在正在用的登录用户,
首选项-》Samba用户添加用户: 设为你现在正在用的登录用户,windows用户名和samba密码任意。
文件-》添加共享-》基本:选个文件夹即可。
-》访问:允许所有用户访问。
看windows电脑可用
mount -t smbfs //192.168.1.1/test /mnt/net -o username=XXXXX
或
mount -t cifs -o username=xxx,password=xxx //hostname/dir /mnt/dir
或
smbclient 相关操作
或
位置-》网络-》windows网络-》MSHOME查看
到此结束!
Windows XP 端:
1. 启用来宾账户
2. 开启netbios服务等(一般情况下是开的,不用管)
3. 瑞星(或其他)防火墙的安全级别设为中级,关闭系统自带的防火墙等,如果不行干脆先关掉试试.
4. 网上邻居-》配置家庭或办公小型网络(启用打印机和共享文件服务),工作组MSHOME
5. 查看工作组中的计算机或搜索IP等,看看正常否。
附录: smbclient用法
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