基于EasyNVR摄像机无插件直播流媒体服务器之linux系统如何打包EasyNVR为deb包?
Posted EasyNVR
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于EasyNVR摄像机无插件直播流媒体服务器之linux系统如何打包EasyNVR为deb包?相关的知识,希望对你有一定的参考价值。
背景分析
从视频智能化相关技术研发开始计算,智能化在视频行业内已经发展了十余年,但是视频行业的智能化应用一直没有达到预期。目前视频智能化主要的表现还是集中在前端设备摄像机产品的某些智能功能,以及一些配备智能分析的NVR/DVR和后端的智能分析平台系统。智能化水平还处在初级阶段,周边的硬件及软件设备还未完善,还有很多环境和应用限制条件。
linux下打包EasyNVR为deb包
问题描述
在实际项目中,有的用户需要提供的EasyNVR以及EasyNTC为deb包格式,那么我们就来看一下如何制作deb包。
问题解决
1.deb 包说明
deb是Linux下的安装包,基于 tar 包,因此本身会记录文件的权限(读/写/可执行)以及所有者/用户组。
deb包里面的结构:DEBIAN目录 和 软件具体安装目录(模拟安装目录)(如etc, usr, opt, tmp等)。
在DEBIAN目录中至少要有control文件,还可能有postinst(postinstallation)、postrm(postremove)、preinst(preinstallation)、prerm(preremove)、copyright (版权)、changlog (修订记录)和conffiles等。
- control文件:描述软件包的名称(Package),版本(Version),描述(Description)等,是deb包必须具备的描述性文件,以便于软件的安装管理和索引。
- postinst文件:包含了软件在进行正常目录文件拷贝到系统后,所需要执行的配置工作。
- prerm文件:软件卸载前需要执行的脚本。
- postrm文件:软件卸载后需要执行的脚本。
2.deb包制作过程
1).制作如下目录及文件
可以在任意目录下创建easynvrdeb文件夹,然后按照如下目录结构创建文件夹,以及文件
2).写DEBIAN目录下3个文件的内容
a).control文件内容:
package: easynvr (软件名称,中间不能有空格)
version: 1.1 (软件版本)
prioritt: optional (软件对于系统的重要性)
architecture: amd64 (软件所支持的平台架构)
maintainer: xxx <> (打包人和联系方式)
description: mydeb (对软件的描述)
b).postinst文件内容 (该脚本赋予可执行权限:chmod +x postinst):
此脚本可以写在安装文件完成后要做的事,比如,解压等相关工作
c).postrm文件内容( 软件卸载后,执行该Shell脚本,一般作为清理收尾工作,给该脚本赋予可执行权限:chmod +x postrm):
3).完成以上的制作目录及文件后可以给做好的easynvrdeb目录进行打包成.deb包
dpkg -b easynvrdeb/ easynvrdeb.deb
#第一个参数为将要打包的目录名
#第二个参数为生成包的名称
3. 安装deb包
dpkg -i easynvrdeb.deb
#将easynvr-linux-3.3.3-1908291459.tar.gz复制到/opt/easynvr目录下后,执行postinst
#postinst脚本在/opt/easynvr目录下生成一个字符的easynvrdeb.log文件
#解压了easynvr-linux-3.3.3-1908291459.tar.gz
#执行了easynvr-linux-3.3.3-1908291459目录下的start.sh 脚本
4.查看deb包是否安装
dpkg -s easynvr
5. 卸载deb包
$ dpkg -r easynvr
#这里要卸载的包名为control文件package字段所定义的 easynvr。
#将/opt/easynvr目录easynvr-linux-3.3.3-1908291459.tar.gz删除后,执行postrm,
#postrm脚本将执行easynvr-linux-3.3.3-1908291459目录下的stop.sh 脚本
#以及删除/opt/easynvr 目录下的文件
dpkg -P easynvrdeb彻底的卸载 包括软件的配置文件等等
6. 卸载后查看deb包
$ dpkg -s easynvr
#这里要卸载的包名为control文件Package字段所定义的 easynvr
7. 查看deb包文件内容
$ dpkg -c easynvrdeb.deb
8.查看当前目录某个deb包的信息
dpkg --info easynvrdeb.deb
9. 解压deb包中所要安装的文件
$ dpkg -X easynvrdeb.deb testdeb
#第一个参数为所要解压的deb包,这里为 easynvrdeb.deb
#第二个参数为将deb包解压到指定的目录,这里为 easynvrdeb
10.解压deb包中DEBIAN目录下的文件(至少包含control文件)
$ dpkg -e easnvrdeb.deb testdeb/DEBIAN
#第一个参数为所要解压的deb包,
#第二个参数为将deb包解压到指定的目录,
#这里为 testdeb/DEBIAN
以上是关于基于EasyNVR摄像机无插件直播流媒体服务器之linux系统如何打包EasyNVR为deb包?的主要内容,如果未能解决你的问题,请参考以下文章
校园安防之高清IP摄像头全终端无插件直播视频流媒体服务EasyNVR校园监控系统方案
RTSP安防网络摄像头/海康大华硬盘录像机网页无插件直播流媒体服务器EasyNVR之鉴权接口的调用配置说明
同一路摄像头视频流接入RTSP_Onvif网页无插件直播流媒体服务器EasyNVR与其他平台播放视频有差异的原因分析
RTSP_ONVIF协议视频流媒体网页无插件直播服务器EasyNVR配置海康大华等安防摄像头通道地址的方法