使用树莓派(香橙派)搭建文件共享服务器-samba服务器

域网内部通过文件共享来传输文件是一种非常方便的方式,小米摄像头也支持用文件共享smb模式将视频备份到局域网中的文件服务器上。之前我一直使用荣耀pro路由器游戏版,是自带USB接口支持文件共享服务的,接上USB移动硬盘,小米摄像头就可以自动将视频备份到移动硬盘上了。最近换了一个WIFI6的路由器,奈何新路由器是不支持文件共享功能的。也不想把家里的电脑一直开着做为文件服务器,就想着使用树莓派(其实我嫌弃树莓派太贵了,找来一个平替,香橙派orangepi zero3 ,这是我找到的最低成本的替代解决方案(网络足够快,CPU的IO能力足够强)1G内存版本的只要99元)加个USB硬盘来做个文件服务器用来自动备份存储小米摄像头录下来的视频。

分项成本:
香橙派orangepi zero3 1G版本一片99元
亚克力外壳一个12元
闲置5V2A手机充电器一个0元
闲置小风扇一个0元
闲置移动硬盘一个0元

总计:
111元

先上个成品图。
在这里插入图片描述
在这里插入图片描述

一、安装samba服务

smb协议是文件共享协议,树莓派的默认安装下是不支持的,所以第一步要先安装samba服务,使用以下二条命令更新安装源后安装samba服务。

sudo apt update
sudo apt install samba samba-common

二、创建要共享的文件夹

在当前目录下创建sharing目录,用于存放要共享的文件。并修改文件夹的访问权限。

mkdir sharing
chmod 777 sharing

三、添加文件共享用户名和密码

出于安全考虑,一般都要对共享文件夹的访问进行控制,所以这里需要给能访问这个共享文件夹的人创建一个用户名和密码(注意这个用户名必须是树莓派里已经存在的用户,替换下面命令中的orangepi,回车后设置共享文件的访问密码)

sudo smbpasswd -a orangepi

四、配置共享文件夹(共享目录)

用以下命令打开配置文件后,在文件的末尾增加本次要共享的目录的设置

sudo vi /etc/samba/smb.conf

并且将path, force user和force group设置成你要共享的目录和你的共用用户名和密码。

[sharing]
   path=/home/orangepi/sharing
   public = yes
   writeable = yes
   browseable = yes
   guest ok = yes
   create mask = 0700
   directory mask = 0700
   force user = orangepi
   force group = orangepi

在global标签下面新增配置由于小米摄像头只支持smb1.0,所以首先需要配置samba服务,使其支持smb1.0,否则小米摄像头会识别不到nas或者说识别不到文件共享系统服务器,会找到不文件服务器,或者报“无法获取储存位置”的错误

server min protocol = NT1

五、重启samba服务

sudo service smbd restart

六、查看sharing文件夹是否成功共享

安装smbclient后,用smbclient则可以看到sharing目录已经被成功的共享了

sudo apt install smbclient
smbclient -L //127.0.0.1 -U username
Password for [WORKGROUP\username]:

	Sharename       Type      Comment
	---------       ----      -------
	print$          Disk      Printer Drivers
	sharing         Disk      
	IPC$            IPC       IPC Service (Samba 4.13.13-Debian)
	username      Disk      Home Directories
SMB1 disabled -- no workgroup available

性能统计:

视频文件数据量:

连接了3个小米摄像头,小米摄像头设置成1小时保存一次视频,每小时大产生60个视频文件(一分钟一个),约372M,一天约8.8G。算下来一个月产生约260G,3个摄像头合计780G视频,1T的硬盘刚刚好。

CPU占用率:

小米摄像头性能有限,每一台小米摄像头存入数据时大约只能产生不到5Mbps的传输速率,此时香橙派的CPU总体CPU占用率约为15%,大部分都是WA用于IO等待了。就算3台摄像头同时存入数据也是妥妥的足够(每台小米摄像头的保存视频的起始时间每次重启后随机生成的,所以也不太会产生多台小米摄像头同时存入视频的情况)

在这里插入图片描述

网络连接速度:

香橙派支持5G频段的WIFI连接,连接速率可以稳定在390Mbps, 考虑到每一台小米摄像头存入数据时大约只能产生不到5Mbps的传输速率,所以这个速度戳戳有余了。

连接速度
在这里插入图片描述
小米摄像头传输速度在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/103802.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

linux-防火墙

目录 一、防火墙概念 1.软件防火墙 2.iptables默认规则 3.iptables的五链 4.iptables动作 5.四表五链 6.iptables实例 一、防火墙概念 linux下防火墙一般分为软件防火墙、硬件防火墙 硬件防火墙:在硬件的级别实现防火墙过滤功能,性能高&#xf…

docker部署rabbitmq的坑

背景 今天用docker部署rabbitmq,启动都一起正常,但是当访问15672端口时,不能加载出页面。 排查 1.防火墙是否开启 ufw status2.ip是否能ping通 ping 192.168.x.x3.检查docker日志 docker psdocker logs -f 容器id4.进入容器&#xff0c…

RabbitMQ运行机制和通讯过程介绍

文章目录 1.RabbitMQ 环境搭建2.RabbitMQ简介3.RabbitMQ的优势:4. rabbitmq服务介绍4.1 rabbitmq关键词说明4.2 消息队列运行机制4.3 exchange类型 5.wireshark抓包查看RabbitMQ通讯过程 1.RabbitMQ 环境搭建 参考我的另一篇:RabbitMQ安装及使用教程&am…

UE4 材质实操记录

TexCoord的R通道是从左到右的递增量,G通道是从上到下的递增量,R通道减去0.5,那么左边就是【-0.5~0】区间,所以左边为全黑,Abs取绝对值,就达到一个两边向中间的一个递减的效果,G通道同理&#xf…

【linux】安装rpmrebuild

rpmrebuild是一种从已经安装的包中构建RPM文件的工具。它可以用于轻松构建修改后的包,并适用于任何使用RPM的Linux发行版。 访问地址 rpm rebuild download | SourceForge.net 选择版本 版本地址:版本地址 下载安装包 安装 rpm -ivh rpmrebuild-2.15…

[C语言]排序的大乱炖——喵喵的成长记

宝子,你不点个赞吗?不评个论吗?不收个藏吗? 最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!! 喵喵喵,你对我真的很重要…

Python:实现日历功能

背景 日常生活中,每天都要用到日历,日历成为我们生活中的必需品,那么如何制作日历呢,其实方法有很多,可以直接在excel中制作,也可以手画等等。 学习过编程的朋友,能否想到用Python编写一…

Docker从入门到实战

Docker基本概念 1、解决的问题 1、统一标准 应用构建 ○ Java、C、JavaScript ○ 打成软件包 ○ .exe ○ docker build … 镜像应用分享 ○ 所有软件的镜像放到一个指定地方 docker hub ○ 安卓,应用市场应用运行 ○ 统一标准的 镜像 ○ docker run 容器化技术 …

STM32:TTL串口调试

一.TTL串口概要 TTL只需要两个线就可以完成两个设备之间的双向通信,一个发送电平的I/O称之为TX,与另一个设备的接收I/O口RX相互连接。两设备之间还需要连接地线(GND),这样两设备就有相同的0V参考电势。 二.TTL串口调试 实现电脑通过STM32发送…

current file is not included in a workspace moduleg 存在多个 main函数的 Go项目 无法成功导包

报错缘由 学习 hystria, 尝试自测案例,使用了 go get “github.com/afex/hystrix-go/hystrix” 进行导入包, 导入成功后,在代码里利用 import 导入,但遇到了以下报错 could not import github.com/afex/hystrix-go/hystrix (current file i…

【前端性能】性能优化手段-高频面试题

持续更新.............................最近更新2023/10/24 1. 讲一下png8、png16、png32的区别,并简单讲讲 png 的压缩原理 PNG8、PNG16、PNG32 是 PNG 图像格式的不同变种,它们主要区别在于颜色深度和透明度支持的不同。 区别 PNG8: PN…

指定顺序输出

系列文章目录 进阶的卡莎C++_睡觉觉觉得的博客-CSDN博客数1的个数_睡觉觉觉得的博客-CSDN博客双精度浮点数的输入输出_睡觉觉觉得的博客-CSDN博客足球联赛积分_睡觉觉觉得的博客-CSDN博客大减价(一级)_睡觉觉觉得的博客-CSDN博客小写字母的判断_睡觉觉觉得的博客-CSDN博客纸币(…

Django 注册及创建订单商品

注册功能的实现 user/views from rest_framework.generics import GenericAPIView from rest_framework.views import APIViewfrom apps.user.models import User from apps.user.serializers import UserSerializer from utils import ResponseMessage from utils.jwt_auth …

C++前缀和算法的应用:从仓库到码头运输箱子原理、源码、测试用例

本文涉及的基础知识点 C算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 双指针 单调双向队列 题目 你有一辆货运卡车,你需要用这一辆车把一些箱子从仓库运送到码头。这辆卡车每次运输有 箱子数目的限制 和 总重量的限制 。 给你…

JAVA基础(JAVA SE)学习笔记(八)面向对象编程(高级)

前言 1. 学习视频: 尚硅谷Java零基础全套视频教程(宋红康2023版,java入门自学必备)_哔哩哔哩_bilibili 2023最新Java学习路线 - 哔哩哔哩 第二阶段:Java面向对象编程 6.面向对象编程(基础) 7.面向对象编程&…

【干货】FMEA的实施流程——SunFMEA

DFMEA和PFMEA的实施流程基本一致,都是先定义过程/功能、故障模式分析、故障原因分析、预防/探测措施的制定、风险风险,最后到制定补偿措施,具体如下图: FMEA实施流程——SunFMEA 一、定义过程/功能 FMEA工作的第一步,…

IDEA配置HTML和Thymeleaf热部署开发

IDEA配置HTML和Thymeleaf热部署开发 1.项目配置2. IDEA配置3. 使用 需求:现在我们在开发不分离项目的时候(SpringBootThmeleaf)经常会改动了类或者静态html文件就需要重启一下服务器, 这样不仅时间开销很大,而且经常重…

APP 专项测试之兼容性测试

1、APP 兼容性测试认识 随着 APP 应用范围越来越广,用户群体越来越大,终端设备的型号也越来越多,移动终端碎片化加剧,使得 APP 兼容性测试成为测试质量保障必须要考虑的环节。 APP 兼容性测试通常会考虑:操作系统、厂…

IOS屏幕旋转监听

IOS屏幕旋转 1.设计窗口,添加三个按钮 2.添加事件连接 3.按钮点击事件实现 先添加三个IBAction 实现IBAction 使用旋转立刻生效 -(IBAction)btnFixPortrait:(id)sender{//访问应用程序委托成员_app.mask UIInterfaceOrientationMaskPortrait;//设置窗口旋转属性[self setN…

【Lua语法】字符串

Lua语言中的字符串是不可变值。不能像在C语言中那样直接改变某个字符串中的某个字符,但是可以通过创建一个新字符串的方式来达到修改的目的 print(add2(1 , 2 ,15,3))a "no one"b string.gsub(a , "no" , "on1111")print(a) print…
最新文章