《摄像头挂载本地路径》
利用嵌入在摄像头的海思芯片部署深度学习模型,变得越来越普遍,我们团队也参与其中,这里记录一下摄像头和本地通信的做法。摄像头作为客户端挂载PC端程序的根目录到摄像头,方便执行交叉编译的可执行文件。
Key Words:nfs 挂载、 nc 传输
Beijing, 2020
作者:RaySue
摄像 nfs 挂载本地路径
- ubuntu 18.04
PC端的操作
1 安装NFS服务:
# 执行以下命令安装NFS服务器,apt 会自动安装 nfs-common、rpcbind 等13个软件包
sudo apt install nfs-kernel-server
2 编写配置文件:
# 编辑/etc/exports 文件:
sudo vi /etc/exports
# /etc/exports文件的内容如下:
/home/surui/Documents/project/cpp/NNIE/camera_alg/ *(rw,sync,no_subtree_check,no_root_squash)
3 创建共享目录
# 在服务器端创建/tmp /data和/logs共享目录
sudo mkdir -p /home/surui/Documents/project/cpp/NNIE/camera_alg/
4 重启nfs服务
sudo service nfs-kernel-server restart
5 常用命令工具
# 在安装NFS服务器时,已包含常用的命令行工具,无需额外安装,显示已经mount到本机nfs目录的客户端机器。
sudo showmount -e localhost
# 将配置文件中的目录全部重新export一次!无需重启服务。
sudo exportfs -rv
# 查看NFS的运行状态
sudo nfsstat
# 查看rpc执行信息,可以用于检测rpc运行情况
sudo rpcinfo
#查看网络端口,NFS默认是使用111端口。
sudo netstat -tu -4
摄像头端的操作
# 先创建要挂载的路径
mkdir nnie_infer
# 把之前加入到 /etc/exports 的路径加ip挂载到摄像机
mount -t nfs -o nolock 192.168.137.249:/home/surui/Documents/project/cpp/NNIE/camera_alg/ ./nnie_infer
nc 命令传输文件
netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据。通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它。使用netcat命令所能完成的事情令人惊讶。
netcat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了。你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其它协议的独立客户端。
- Mac、Linux都可用
-
两个设备可以 ping 通
-
接受端(服务端)起监听服务
2.1 nc -l ip port > aimfile
2.2 eq: nc -l 192.168.xxx.xxx 8888 > aimfile
-
上传端(客户端)上传
3.1 nc ip port < sendfile
3.1 eq: nc 192.168.xxx.xxx 8888 < sendfile
- 如果没反应可以测试一下端口是不是通的,命令是:
telnet 192.168.xxx.xxx 8889
参考
https://blog.csdn.net/csdn_duomaomao/article/details/77822883