前序文章:

这是折腾树莓派的第四篇文章,主要讲解如何设置samba文件共享,当做家庭nas。

samba介绍

samba是unix/linux系统与windows操作系统进行文件和打印机共享的网络协议。因其设置简单使用方便,在内网环境中十分受欢迎,可以认为是内网版的ftp。

windows、macos以及许多桌面版的linux系统直接继承samba客户端,可方便的添加和卸载samba网盘。

树莓派安装和设置samba

本节介绍在树莓派上安装和设置samba,其操作步骤为:

1. 安装samba软件

安装命令:

sudo apt update && sudo apt upgrade && sudo apt-get install -y samba

2. 设置samba

samba的配置文件是/etc/samba/smb.conf,其配置主要包含四部分:

  1. global:samba软件的全局设置;
  2. homes:系统用户主目录共享设置,默认用户才能访问自己的主目录;
  3. printers:共享打印机设置
  4. 用户自定义的共享目录设置

前三部分可根据自己的需求更改,也可保持默认(如有不懂请man 5 smb.conf查看字段含义)。下文针对公共共享目录自定义私有目录两方面解释自定义共享目录操作的步骤。

  1. 公共共享目录。在/etc/samba/smb.conf末尾增加类似如下配置(#号开头部分是说明):
    # 配置段名称,可以随意取
    [public]
    # 共享段备注
    comment = public folder
    # 共享文件夹路径,必填
    path = /public
    # 允许可以写入
    read only = no
    # 允许匿名访问
    public = yes
    # 是否出现在网络发现中
    browseable = yes
  2. 自定义共享目录,增加配置如下:
    [tlanyan]
    comment = tlanyan windows file
    path = /mnt/tlanyan
    # 不出现在网络发现中
    browseable = no
    # 禁止匿名访问
    public = no
    writable = yes
    # 只允许pi用户访问
    valid users = pi

配置完成后,sudo systemctl restart smbd重启samba服务。

3. 客户端连接

由于windows和macos内置了对samba协议的支持,访问samba文件夹是非常方便的。

windows: 打开“我的电脑”,点击上方菜单栏的“添加网络驱动器”,在弹出来的窗口中点击“选择自定义网络位置”,接着输入“//ip/文件夹名称”,按照引导完成连接设置;
windows连接samba网盘

macos:打开finder -> 前往 -> 连接服务器,在弹框中输入”smb://ip/共享文件夹”:
macos连接samba

如果设置了访问权限,根据提示输入用户名和密码。正确无误的话,在系统中便可以看到挂在的共享文件夹。设置了写权限的共享文件夹可以当作本地磁盘来用,操作上完全一致,并且由于一般在内网,速度上也不会感觉有延迟。

其它

  1. 树莓派默认的存储只有一个sd卡,你需要通过usb外接硬盘才能很好的完成家庭nas的任务;
  2. 对于共享文件夹,访问用户应该有对应的权限,否则可能出现权限问题

    mac samba错误提示
    mac samba错误提示

参考

  1. https://tutorials.ubuntu.com/tutorial/install-and-configure-samba#0