系统信息:
Ubuntu18.04
安装Docker
centOS参考之前的帖子:查看
Ubuntu:
sudo systemctl stop docker
sudo apt-get purge docker-ce 或 sudo apt-get remove docker docker-ce docker-io
sudo apt update
sudo apt upgrade
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
apt-cache madison docker-ce
sudo apt install docker-ce
systemctl start docker
sudo systemctl start docker
sudo systemctl enable docker
sudo docker info
Docker安装HomeAssistant
docker search home-assistant
docker pull homeassistant/home-assistant
docker run -d --name="hass" -v /home/jesse/haconfig:/config -p 8123:8123 homeassistant/home-assistant
docker ps
安装Zoneminder(Ubuntu)
这个不太清楚,安装时候坑挺多的,英文文档也不太看得懂,解释也比较少,
跟随这位前辈的帖子可以安装成功:查看
原文复制的,以防被删... ...
# [Ubuntu 18.04 安装Zoneminder记录](https://www.cnblogs.com/boneking/p/15793005.html)
最近闲的,想装个监控服务器玩,查了下应该就Zoneminder应该还不错,记录如下:
找到官网,https://zmrepo.zoneminder.com/,看了半天,先装个公钥吧
wget -O - https://zmrepo.zoneminder.com/debian/archive-keyring.gpg | sudo apt-key add -
然后转到页面说明的Ubuntu安装说明,https://zoneminder.readthedocs.io/en/latest/installationguide/ubuntu.html
接下来执行下列命令开始安装
sudo apt-get install tasksel
sudo tasksel install lamp-server
方便起见切换下root用户
sudo -i
加PPA源
add-apt-repository ppa:iconnor/zoneminder-1.36
更新更新(我只update了)
apt-get update
apt-get upgrade
apt-get dist-upgrade
配置MySql,系统里应该装了mysql,没装装一个,注意版本,我的版本是MySQL 5.7 + Zoneminder 1.36
执行
rm /etc/mysql/my.cnf (this removes the current symbolic link)
cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/my.cnf
编辑my.cnf
vim /etc/mysql/my.cnf
找到[mysqld]区块,追加以下内容
sql_mode = NO_ENGINE_SUBSTITUTION
保存重启
systemctl restart mysql
接下来安装
apt-get install zoneminder
配置数据库,初始化。
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,references on zm.* to 'zmuser'@localhost identified by 'zmpass';"
这块导入可能会报一些SQL错误,主要是新增表失败,表已经存在之类的,
解决方法是在SQL报错的地方加上了删除表的命令,大概zm_create.sql的1089行左右
DROP TABLE IF EXISTS Sessions;
CREATE TABLE Sessions (...
DROP TABLE IF EXISTS Snapshots;
CREATE TABLE Snapshots (...
DROP TABLE IF EXISTS Snapshot_Events;
CREATE TABLE Snapshot_Events (...
再执行应该差不多的位置还会报错,无法删除Snapshots表,因为外键关联。所以加上下列命令,强行删除就好了,
SET FOREIGN_KEY_CHECKS = 0;
我最后的解决方法,手动删除了上述三张表,再执行zm_create.sql,无错成功。
设置权限
chmod 740 /etc/zm/zm.conf
chown root:www-data /etc/zm/zm.conf
chown -R www-data:www-data /usr/share/zoneminder/
增加用户
adduser www-data video
usermod -a -G video www-data
配置Apache
a2enmod cgi
a2enmod rewrite
a2enconf zoneminder
a2enmod expires
a2enmod headers
设置ZoneMinder自启动&启动
systemctl enable zoneminder
systemctl start zoneminder
systemctl reload apache2
最后,访问!
http://ip/zm/
接下来就是配置Zoneminder
注意这些地方:::
添加设备
配置HomeAssistant
ha可以直接添加rtsp流,但是据说有点卡顿,ha支持直接添加zoneminder组件(看③)
①、直接添加onvif设备
②、添加rtsp流的设备
configuration.yaml文件:
camera:
- platform: ffmpeg
name: camera001
input: rtsp://admin:12345@192.168.2.234:554/Streaming/Channels/1
③、直接添加zoneminder
zoneminder:
- host: 192.168.2.217
username: jesse
password: 123123
camera:
- platform: zoneminder
注意yaml语法规则,节点不能有重复