ZoneMinder-Ubuntu 18.04安装与配置

74次阅读
没有评论

安装说明适用于未安装ZM的全新ubuntu 18.04系统。

建议您使用Ubuntu Server安装并在安装期间选择LAMP选项以安装Apache,MySQL和PHP。如果您没有这样做,您可以通过运行来实现相同的结果:

sudo apt-get install tasksel #安装tasksel
sudo tasksel install lamp-server

在安装过程中,它会要求您为MySQL设置root密码。安装LAMP是ZoneMinder所必须的。

步骤1:使用sudo在此安装中运行命令或使用以下命令成为root

sudo -i

第2步:更新Repos

最新发布的

ZoneMinder现在是当前标准Ubuntu存储库的一部分,但有时官方存储库可能会落后。要查看我们的 发布页面以获取最新版本。

或者,ZoneMinder项目团队维护PPA,在新版本的ZoneMinder之后立即更新。要使用此存储库而不是官方Ubuntu存储库,请从命令行输入以下内容:

add-apt-repository ppa:iconnor/zoneminder

请注意,从1.32.0开始我们正在为每个主要版本创建一个新的PPA,以防止从一个主要版本自动升级到另一个主要版本。因此,而不是上面的ppa行使用以下内容:

add-apt-repository ppa:iconnor/zoneminder-1.36

如果您使用的是Trusty或Xenial,则可能需要添加两者,因为旧的ppa中包含一些依赖项包。

更新和升级。

apt-get update
apt-get upgrade
apt-get dist-upgrade

第3步:配置MySQL

MySQL 5.7中的某些新默认值会导致ZoneMinder <1.32.0的某些问题,解决方法是修改MySQL的sql_mode设置。请注意,ZoneMinder 1.32.0不需要这些更改,并且有些人报告它们在1.32.0中导致问题。

为了更好地管理MySQL服务器,建议复制示例配置文件并替换默认的my.cnf符号链接。

rm /etc/mysql/my.cnf  (this removes the current symbolic link)
cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/my.cnf

要更改MySQL设置:

vi /etc/mysql/my.cnf

在[mysqld]部分中添加以下内容

sql_mode = NO_ENGINE_SUBSTITUTION
设置时区。如:北京时间的东8时区 
default-time-zone ='+8:00'  

按shift+;

输入wq

然后按[Enter]保存

重启MySQL

systemctl restart mysql

第4步:安装ZoneMinder

apt-get install zoneminder

第5步:配置ZoneMinder数据库

ZoneMinder 1.32.0上不需要此步骤。

#反正我是操作了,按照官方说明比操作也可以
mysql -uroot -p < /usr/share/zoneminder/db/zm_create.sql
mysql -uroot -p -e "grant lock tables,alter,drop,select,insert,update,delete,create,index,alter routine,create routine, trigger,execute on zm.* to 'zmuser'@localhost identified by 'zmpass';"

第6步:设置权限

将/etc/zm/zm.conf设置为root:www-data 740和www-data访问内容

chmod 740 /etc/zm/zm.conf
chown root:www-data /etc/zm/zm.conf
chown -R www-data:www-data /usr/share/zoneminder/

第7步:正确配置Apache

a2enmod cgi
a2enmod rewrite
a2enconf zoneminder

您可能还希望启用以下模块以提高缓存性能

a2enmod expires
a2enmod headers

步骤8:启用并启动Zoneminder

systemctl enable zoneminder
systemctl start zoneminder

第9步:在PHP中编辑时区

vi /etc/php/7.2/apache2/php.ini

找到[date],把date.timezone前面分号删除,在 http://php.net/manual/en/timezones.php 找到你所在的时区,我们这里设置为亚洲/上海

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone =Asia/Shanghai

按shift+;

输入wq

然后按[Enter]保存

设置系统时区
先查看当前系统时间
root@ubuntu:/# date -R 
我需要的是东八区,这儿显示不是,所以需要设置一个时区 
运行tzselect
root@ubuntu:/# tzselect
按键顺序:4-9-1
复制文件到/etc目录下
root@ubuntu:/# cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime
再次查看时间date -R,已经修改为北京时间

第10步:重新加载Apache服务

systemctl reload apache2
  1. 打开浏览器并转到http://ip/zm应该就能打开ZoneMinder控制台
  2. (可选的API检查)在同一浏览器中打开一个选项卡,然后转到 http://ip/zm/api/host/getVersion.json如果它正常工作,您应该获得类似于以下示例的版本信息:
{     
"version": "1.29.0",     
"apiversion": "1.29.0.1"
} 

安装完成

问题处理

删除摄像头时系统将events 文件夹给删除了。造成不能保存录像的问题

解决:在以下路径下新建events文件夹,赋值权限755,组和所有者www-data [33]

ubuntu server 18.04 路径:/var/cache/zoneminder/

更新系统版本至1.34

要在Ubuntu上更新到此版本,您将需要添加新的ppa
sudo add-apt-repository ppa:iconnor / zoneminder-1.34

正文完