linux下配置samba共享目录
samba是linux下用于用于网络共享的协议,可以利用它来共享一个linux机器上的目录,并通过其他windows或者linux系统访问,避免了不同操
作系统间磁盘格式不同导致的文件传输问题。
安装samba
配置环境说明:
linux Server | Linux Client | Windows Client |
---|---|---|
raspberry | xubuntu 16.04 | win7 |
- 登录到raspberry上,执行
sudo apt-get install samba
即可,其他基于debian的linux发行版安装方法类似
配置samba共享目录
- 编辑samba配置文件
vim /etc/samba/smb.conf
- 在其中添加配置字段
[abc]
comment = abc_share
path = /home/cheng
writable = yes
字段含义
[abc]
: 共享目录的名字,自定义即可,用于标识
-
comment
- 对共享目录的备注,自定义即可 path
- 所要共享的目录路径 writable
- 共享目录是否可写入
注意samba有很多种配置选项可以使用,但经过测试发现以上几种配置后就可以实现大部分功能
- 配置samba目录密码
smbpasswd -a abc
其中abc是给刚才配置的共享目录起得名字
此时会提示输入samba共享密码
执行该操作要求当前用户有对abc目录的权限
- 使能samba服务
smb restart
这样就完成samba服务器端得配置了,是不是很简单?接下来可以测试一下是否可以正常使用共享目录
#windows下访问samba共享目录
windows下访问共享目录非常方便,有两种方法
##资源管理器访问
win + E
打开资源管理器,在地址栏输入配置的共享目录的ip地址,这里是我的raspberry的ip:
\\192.168.2.108
Aha! 可以看到在这个ip下的所有共享目录都显示出来,而且目录名是在服务器端配置的名字(即[]
中定义的名字)
注意在window上地址前加的是反斜杠
\
##配置网络磁盘访问
如果需要经常访问共享目录的话,可以将共享目录映射为一个网络磁盘,这样操作共享目录就像操作本地磁盘一样了
打开我的电脑>>>右键左边的计算机图标>>>选择添加一个网络位置
>>>接下来按提示输入共享目录所在的ip地址即可,如\\192.168.2.108\abc
此时可以看到我的电脑里出现了一个新的磁盘,打开就是共享目录的内容,wow!是不是很酷!
linux下访问samba共享目录
linux下使用samba目录没有window那么方便,需要安装sambaclient客户端,同时对共享目录不能直接执行打开等操作,只能做下载上传等几个固定的操作,类似当作一个FTP服务器使用
sambaclient安装
在作为客户端得linux中,这里我是用的xubuntu,输入
sudo apt-get install sambaclient
即可
##sambaclient使用
这里我的samba服务器即我的raspberry的ip是192.168.2.108
,共享目录标识是abc
- 查看服务器所有共享目录
##smbclient -L //[server_ip]
smbclient - L //192.168.2.108
会列出该ip下所有共享目录
- 连接到samba目录
##smbclient //[server_ip]/[share_dir]
smbclietn //192.168.2.108/abc
输入后提示要求密码,输入后登录成功
- smbclient操作
登录后相当于登录到FTP服务器,只支持smbclient本身提供的一些指令,如get下载,put上传等等,可以man smbclient
查看详细说明,不过更简单得办法是登录后直接输入?
,就会列出所有支持得指令,如果想知道某个具体指令如get的用法,再输入help get
即可,如图所示
通过配置这样一个samba共享目录,我是将raspeberry连接上硬盘当作一个局域网云端使用,这样无论是通过window还是linux都可访问并管理这个目录,你也可以这样试试~