域网内部通过文件共享来传输文件是一种非常方便的方式,小米摄像头也支持用文件共享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的传输速率,所以这个速度戳戳有余了。
连接速度
小米摄像头传输速度