zoukankan      html  css  js  c++  java
  • Ubuntu 18.04 安装Zoneminder记录

    最近闲的,想装个监控服务器玩,查了下应该就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/
    my.cnf
    -----
  • 相关阅读:
    ComponentOne Studio Enterprise ———C1控件barchat 的统计图格式 设置
    OpenStack开发学习笔记04————
    短信推送API接口实现---------阿里大于
    OpenStack开发学习笔记03————创建一个openstack
    OpenStack开发学习笔记02————环境的安装和部署
    OpenStack开发学习笔记01
    MVC模式在Java Web应用程序中的实例分析
    javascript的setTimeout以及setInterval休眠问题。
    BFC 神奇背后的原理
    jquery checkBox的问题
  • 原文地址:https://www.cnblogs.com/boneking/p/15793005.html
Copyright © 2011-2022 走看看