因为这样做:-

sudo apt-get remove --purge zoneminder
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo rm -rf /var/lib/mysql
sudo apt-get remove --purge apache2*
sudo apt-get clean
sudo apt-get update
sudo apt-get upgrade
sudo rm -r /var/www/*
sudo rm -r /etc/apache2/*
sudo rmdir /var/www
sudo rmdir /etc/apache2
sudo rm -r /opt/zm
sudo rm /etc/apache2/conf.d/zoneminder.conf
sudo dpkg --configure -a

reboot hardware

sudo apt-get install zoneminder

产生此错误:-
 * Starting web server apache2                                                                                                                               apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
                                                                                                                                                      [ OK ]
Setting up libapache2-mod-php5 (5.4.6-1ubuntu1.4) ...

Creating config file /etc/php5/apache2/php.ini with new version
 * Restarting web server apache2                                                                                                                             apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
 ... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
                                                                                                                                                      [ OK ]
Setting up apache2 (2.2.22-6ubuntu2.3) ...
Setting up zoneminder (1.25.0-1.1ubuntu1) ...
Starting ZoneMinder: Can't open config file '/opt/zm/etc/zm.conf': No such file or directory at /usr/local/share/perl/5.14.2/ZoneMinder/Config.pm line 100
BEGIN failed--compilation aborted at /usr/local/share/perl/5.14.2/ZoneMinder/Config.pm line 100.
Compilation failed in require at /usr/local/share/perl/5.14.2/ZoneMinder.pm line 33.
BEGIN failed--compilation aborted at /usr/local/share/perl/5.14.2/ZoneMinder.pm line 33.
Compilation failed in require at /usr/bin/zmpkg.pl line 37.
BEGIN failed--compilation aborted at /usr/bin/zmpkg.pl line 37.
failure

invoke-rc.d: initscript zoneminder, action "start" failed.
dpkg: error processing zoneminder (--configure):
 subprocess installed post-installation script returned error exit status 2
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Processing triggers for ureadahead ...
Errors were encountered while processing:
 zoneminder
E: Sub-process /usr/bin/dpkg returned an error code (1)

最初,zoneminder仅使用一个apt get install zoneminder命令就在这台32位“mint 14”计算机上安装了“first time”Ok:-
http://www.tuxradar.com/content/build-your-own-surveillance-zoneminder
但几天前,当我试图通过手动编译来升级到1.26.2版本时,我搞砸了。
如何完全删除zoneminder,使原始的“干净”安装重新工作?

最佳答案

无需执行上述任何操作,通过此链接:-
http://pjpramod.blogspot.co.uk/2010/01/starting-zoneminder-cant-open-config.html
所以我这么做了:-

sudo rm -r /usr/local/share/perl/5.14.2/*

然后安装就完成了-但是弹出窗口不再工作(完全不打开或在同一个窗口中打开),所以不要这样做。
最后,我放弃了重新安装预先构建的包(1.25.0-还是1.25.2?)下载了1.26.3tar文件,并将其解包并放入cd。。。
…和./configure丢失。。。
…但是如果你运行bootstrap.sh
./bootstrap.sh

然后那个(和其他一些东西)神奇地出现了。
然后这样做了:
sudo ./configure --prefix=/opt/zm --with-mysql=/usr --with-ffmpeg=/usr --with-webuser=www-data --with-webgroup=www-data --disable-debug --disable-crashtrace --enable-mmap=yes --with-webdir=/var/www --with-cgidir=/usr/lib/cgi-bin ZM_SSL_LIB=openssl

它配置好了。
那么这个
sudo make

接下来是:-
sudo make install

它安装得很好,但是当我试图运行zoneminder时,我得到了数据库错误,所以像这样删除zm:-
mysql  -uroot -pyourPassWord
mysql > drop database zm;
mysql > quit;

这是为了重新创建它(我对数据库一无所知,这是monkey see,monkey do fromhere):-
mysql -u root -pyourPassWord
>create database zm;
>exit
mysql -u root -pyourPassWord zm < db/zm_create.sql

mysql -u root -pyourPassWord zm
>grant select,insert,update,delete on zm.* to 'zmuser'@localhost identified by 'zmpass';
>quit
mysqladmin -u root -pyourPassWord reload

然后工作正常(我运行zm就像这样:-)
sudo /etc/init.d/zm start

当我试图找出apache和zm之间的联系(以及apache是如何工作的)时,我发现您只需要这样做:-
localhost/index.php

在我的浏览器中打开zoneminder,工作正常-耶哈哈!两天的努力和一次离婚都不错。
但我只有这样才能让zmpkg.pl工作:-
sudo /opt/zm/bin/zmpkg.pl

而不是这个:-
sudo zmpkg.pl

因为,我知道$PATH是为sudo“全局”定义的,因此,我在.bashrc文件中添加/opt/zm/bin没有任何效果,因此,与其将zmpkg.pl放入/usr/local/sbin(或“全局”$PATH中的其中一个路径),不如插入这样的链接:-
sudo ln -s /opt/zm/bin/zmpkg.pl /usr/local/sbin/zmpkg.pl

而且有效!所以现在例如。
sudo zmpkg.pl status

又起作用了。
有人知道怎么做吗?所以
localhost/zm

又起作用了?
2013年12月20日更新:我刚刚在这个mint 14系统上成功升级到verion 1.26.5,重复了上面的一些说明,即。
1)停止zoneminder。
2)下载版本1.26.5
3)运行./bootstrap.sh脚本(如上所述)。
4)运行./configure。。。脚本(如上所述)。
5)运行make(如上所述-但出现错误)。。。
所以我读了自述文件,从中复制粘贴了这个(第24行):
root@host:~# aptitude install -y apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm subversion automake autoconf libjpeg8-dev libjpeg8 apache2-mpm-prefork libapache2-mod-php5 php5-cli libphp-serialization-perl libgnutls-dev libjpeg8-dev libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libv4l-dev libtool ffmpeg libnetpbm10-dev libavdevice-dev libmime-lite-perl dh-autoreconf dpatch;

然后做了一个
sudo干净
然后重复上面的4)和5),它就编译好了。
6)“sudo make install”是否正常(我猜是在旧版本的基础上)。
7)然后执行所有其余的“如上所述”指令,从数据库中删除zm(在尝试zm失败后),并重新插入它,然后通过版本1.26.5的“zmpkg.pl start”脚本启动OK
8)和以前一样,我不得不手动重置所有摄像头、密码、用户和区域,但至少这都是“第一次”

关于mysql - 我该如何重新安装zoneminder?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18761594/

10-12 15:24