回答

收藏

[评测分享] 【树莓派5 测评】 + 05.samba功能测试(zmj)

#板卡评测 #板卡评测 2630 人阅读 | 0 人回复 | 2024-04-27

【树莓派5 测评】 + 05.samba功能测试(zmj)

Samba(简称SMB)是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。通过使用它可以实现Windows和Linux之间的文件共享。当开启samba服务后,就可以通过samba服务远程将树莓派的存储资源挂载在自己的电脑上,像浏览自己电脑上的资源一样浏览树莓派上的资源。
1.        samba的安装与配置
SMB 协议基本是所有设备都支持,在树莓派上实现samba安装与配置的流程如下:
  1. //------samba安装与配置
  2. //---在根目录创建 share_samba 目录用于共享
  3. sudo mkdir /share_samba
  4. sudo chmod -R 777 /share_samba
  5. //---安装 Samba
  6. sudo apt install samba samba-common-bin -y
  7. //---备份原始配置文件,养成备份好习惯
  8. sudo cp -rf /etc/samba/smb.conf /etc/samba/smb.conf_bak
  9. //---编辑配置文件(添加samba共享信息)
  10. sudo vim smb.conf
  11.         # ------------------------
  12.         [global]
  13.               guest account = nobody
  14.         [RPI5]
  15.            comment = RPi5_zmj
  16.            path = /share_samba
  17.            browsable = yes
  18.            writable = yes
  19.            guest ok = yes
  20.            create mask = 0777
  21.            directory mask = 0777
  22.         # ------------------------
  23. //---创建samba用户及密码
  24. sudo smbpasswd -a zhaomeijing
  25. //---测试配置文件是否有错误(Linux的testparm命令,用于测试Samba的设置是否正确无误)
  26. testparm
  27. //---重启 samba 服务
  28. sudo /etc/init.d/smbd restart
  29.         或者
  30. sudo samba restart
  31. //------详细Log
  32. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo mkdir /share_samba
  33. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo chmod -R 777 /share_samba
  34. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo apt install samba samba-common-bin -y
  35. zhaomeijing@raspberrypi5:~/workspace/03_samba$ ls -la /etc/samba/
  36. total 48
  37. drwxr-xr-x   3 root root  4096 Apr 16 14:30 .
  38. drwxr-xr-x 173 root root 12288 Apr 16 13:58 ..
  39. -rw-r--r--   1 root root     8 Oct 10  2023 gdbcommands
  40. -rw-r--r--   1 root root  8851 Apr 16 14:30 smb.conf
  41. drwxr-xr-x   2 root root  4096 Oct 10  2023 tls
  42. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo cp -rf /etc/samba/smb.conf /etc/samba/smb.conf_bak
  43. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo vim /etc/samba/smb.conf
  44. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo smbpasswd -a zhaomeijing
  45. New SMB password:
  46. Retype new SMB password:
  47. Added user zhaomeijing.
  48. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo /etc/init.d/smbd restart
  49. Restarting smbd (via systemctl): smbd.service.
  50. zhaomeijing@raspberrypi5:~/workspace/03_samba$ sudo samba restart
  51. zhaomeijing@raspberrypi5:~/workspace/03_samba$ testparm
  52. Load smb config files from /etc/samba/smb.conf
  53. Global parameter workgroup found in service section!
  54. Global parameter log file found in service section!
  55. Global parameter max log size found in service section!
  56. Global parameter logging found in service section!
  57. Global parameter panic action found in service section!
  58. Global parameter server role found in service section!
  59. Global parameter obey pam restrictions found in service section!
  60. Global parameter unix password sync found in service section!
  61. Global parameter passwd program found in service section!
  62. Global parameter passwd chat found in service section!
  63. Global parameter pam password change found in service section!
  64. Global parameter map to guest found in service section!
  65. Global parameter usershare allow guests found in service section!
  66. Loaded services file OK.
  67. Weak crypto is allowed by GnuTLS (e.g. NTLM as a compatibility fallback)

  68. Server role: ROLE_STANDALONE

  69. Press enter to see a dump of your service definitions

  70. # Global parameters
  71. [global]
  72.         idmap config * : backend = tdb

  73. [RPI5]
  74.         comment = RPi5_zmj
  75.         create mask = 0777
  76.         directory mask = 0777
  77.         guest ok = Yes
  78.         path = /share_samba
  79.         read only = No

  80. [homes]
  81.         browseable = No
  82.         comment = Home Directories
  83.         create mask = 0700
  84.         directory mask = 0700
  85.         valid users = %S

  86. [printers]
  87.         browseable = No
  88.         comment = All Printers
  89.         create mask = 0700
  90.         path = /var/tmp
  91.         printable = Yes

  92. [print$]
  93.         comment = Printer Drivers
  94.         path = /var/lib/samba/printers
  95. zhaomeijing@raspberrypi5:~/workspace/03_samba$ ll /share_samba/
  96. total 7660
  97. drwxrwxrwx  2 root        root           4096 Apr 16 14:30  ./
  98. drwxr-xr-x 19 root        root           4096 Apr 16 13:55  ../
  99. -rwxrw-rw-  1 zhaomeijing zhaomeijing 7833709 Feb 28 13:47 '弹棉花的小花 - 顿啦 爱你(小花版).mp3'*
  100. zhaomeijing@raspberrypi5:~/workspace/03_samba$
复制代码
这个配置文件需要特别说明一下:
  1. //------samba配置文件
  2. //---路径
  3. /etc/samba/smb.conf
  4. //---增加配置信息
  5. [global]
  6.            guest account = nobody
  7. [RPI5]
  8.         comment = RPi5_zmj
  9.         path = /share_samba
  10.         browsable = yes
  11.         writable = yes
  12.         guest ok = yes
  13.         create mask = 0777
  14.         directory mask = 0777
  15. //---配置信息说明
  16. - [global]: 这个部分包含了整个 Samba 服务器的全局设置。所有的设置都会应用到服务器上的所有共享。
  17. - guest account = nobody: 这个设置指定了当以游客身份访问 Samba 共享时,所使用的系统账户。在这个例子中,游客会被映射到系统的 nobody 账户上。

  18. - [RPI5]: 这是一个共享块的开始标记,也是用户定义的共享块名称,表示以下的配置都是针对名为 RPI5 的共享。每个共享块都有其自己的设置。
  19. - comment = RPi5_zmj:配置说明信息
  20. - path = /share_samba: 指定共享目录的路径,此处共享的目录是 /share_samba 。
  21. - browsable = yes: 允许网络中的其他用户看到这个共享。设置为 yes,则此共享会出现在网络上的列表中。
  22. - writable = yes: 允许对共享目录的文件进行写操作。如果设置为 no,则此共享为只读。
  23. - guest ok = yes: 允许不需要密码的游客访问此共享。
  24. - create mask = 0777 和 directory mask = 0777: 这两个设置决定了通过 Samba 创建的文件和目录的权限。0777 表示所有用户(拥有者、组和其他)都有读、写和执行的权限。create mask 应用于文件,而 directory mask 应用于目录。
复制代码
//------树莓派端samba安装与配置
2.        Windows连接Samba
一切完成后,Windows 上可以在文件管理器通过“ \\192.168.5.177\RPI5 ”访问共享目录(IP 为树莓派的 IP 地址):
  1. //------Windows连接Samba
  2. 1.打开文件夹,输入树莓派5的IP地址及Samba服务地址
  3. \\192.168.28.5.177\RPI5
  4. 2.输入Samba服务账号及密码(此时可以正常访问Samba共享文件夹)
  5. 3.Windows端拷贝文件;
  6. 4.树莓派5检测Samba共享文件夹的文件状态。
复制代码
//------Windows连接Samba
3.        Windows添加网络映射
除了“2. Windows连接Samba”中通过IP加上目录的方式来共享文件,还可以通过挂载的方式实现Samba服务的便捷访问。
3.1        打开Windows的SMB功能
在控制面板找到“ Windows 功能 ”,勾选“ SMB 1.0/CIFS 文件共享支持 ”,确定后需要重启系统。
3.2        添加网络驱动器映射
打开“我的电脑”,选择映射网络驱动器,选择驱动器的盘符,填写文件夹的具体路径“  \\192.168.5.177\RPI5 ”。要求添加凭证的时候,直接填写smb服务器已经存在的账号和密码即可。如此,添加网络驱动器映射成功。





总结,在树莓派上面搭建samba,实现局域网文件共享功能,可应用于很多存储场景,比如利用树莓派下载文件,然后本地电脑查看响应文件或者把文件从本地电脑拷贝进树莓派等等。
//------end





关注下面的标签,发现更多相似文章
分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条