树莓派下配置samba共享目录以及通过window和linux访问方法

文章目录

  • linux下配置samba共享目录
    • 安装samba
    • 配置samba共享目录
  • linux下访问samba共享目录
    • sambaclient安装

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共享目录以及通过window和linux访问方法_第1张图片

通过配置这样一个samba共享目录,我是将raspeberry连接上硬盘当作一个局域网云端使用,这样无论是通过window还是linux都可访问并管理这个目录,你也可以这样试试~

你可能感兴趣的:(linux)