CentOS

From ZoneMinder Wiki
Revision as of 16:42, 27 May 2008 by Mudputty (talk | contribs)
Jump to navigationJump to search

The following is a Step-By-Step of how to install ZoneMinder 1.23.3 With CentOS 5.1. It is a current work in progress so first will be listed the steps, and then the explanations will be added this week including a Step-By-Step for installing the base OS of CentOS for ZoneMinder. Most of the content is from users from within the Forums


The intent of this walk through is to install a very base/bare bones installation that will only run ZoneMinder. This would be for a dedicated ZoneMinder server. The reason for the very light installation is so that the majority of system resources are available to ZoneMinder and not having to power the OS. With this installation Memory is reduced to around 140-160MB, and CPU usage is practically nonexistent.


Cent OS 5.1 Initial Installation ...coming soon


Installing ZoneMinder 1.23.3

  • Add the RPM Forge repository to CentOS. This will allow the installation of a number of services/applications later on without having to manually install them.
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
  • Download the needed files ZoneMinder 1.23.3 and the Cambozola addon
wget http://www2.zoneminder.com/downloads/ZoneMinder-1.23.3.tar.gz
wget http://www.zoneminder.com/fileadmin/downloads/cambozola.jar
  • Screen is a simple program that allows you to run commands from a "Hosted" command line interface. This helps if you loose your connection to the server for any reason in that it allows you to resume (screen -r) right where you left off. Often times I will start a large update/upgrade, leave it for the day, then come back and see where it is at.
  • Install Screen
yum install screen
  • To start a screen session just type
screen
  • If you get disconnected and need to resume your session of screen simply type
screen -r
  • Now let's install all the services and programs that will be needed
yum install mysql mysql-server mysql-devel php php-gd php-mysql httpd gcc pcre-devel gd mod_ssl glib2-devel gcc-c++ ntp gnutls-devel libjpeg-devel perl-Archive-Tar perl-MIME-Lite perl-MIME-tools perl-Date-Manip perl-Time-HiRes perl-LWP-UserAgent-Determined perl-PHP-Serialization perl-Device-SerialPort perl-Archive-Zip perl-Module-Load
  • Now let's update everything within the new CentOS install
yum -y update
  • Now we need to make sure we use the lasted "tested" version of "ffmpeg". This is the latest version of ffmpeg that the ZoneMinder developers have tested with
svn checkout -r 11879 svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
cd ffmpeg/ 
./configure
make 
make install 
make install-libs
  • Turn everything on
chkconfig httpd on 
chkconfig mysqld on 
chkconfig ntpd on 
service httpd start 
service mysqld start 
service ntpd start
  • Next we need to extract the contents of the ZoneMinder "tar" file, and then jump into its directory
cd /root/
tar -zxvf ZoneMinder-1.23.3.tar.gz
cd ZoneMinder-1.23.3
  • Now we are going to configure ZoneMinder with some added statements. What is listed are default CentOS directory placements.
    • Note that the name of the ZoneMinder database is "zm"
  • Change "zmuser" (if you want) with the user that you will use within MySQL to access the ZoneMinder database
  • Change "zmpass" with the password you will be using with the "zmuser" account
./configure --with-webdir=/var/www/html/zm --with-cgidir=/var/www/cgi-bin --with-webuser=apache --with-webgroup=apache ZM_DB_HOST=localhost ZM_DB_NAME=zm ZM_DB_USER=zmuser ZM_DB_PASS=zmpass
make
make install
  • Need to add a password for the root user of MySQL
  • Create the zm database
  • Create the zm database user with permissions and password
mysql
mysql> SET PASSWORD FOR root@localhost=PASSWORD('new_root_password');

>Query OK, 0 rows affected (0.00 sec)

mysql> create database zm;

>Query OK, 1 row affected (0.01 sec)

mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on zm.* to your_zm_user@localhost;

>Query OK, 0 rows affected (0.02 sec)

mysql> SET PASSWORD FOR your_zm_user@localhost=PASSWORD('your_zm_password_from_above');

>Query OK, 0 rows affected (0.25 sec)

mysql> exit

>Bye

  • Import the tables into the zm database
mysql -u root -p < db/zm_create.sql zm
  • Make it so that ZoneMinder will startup automatically when the system is rebooted
cp scripts/zm /etc/init.d/
chmod +x /etc/init.d/zm
chkconfig zm on
  • Add the Cambozola Java web interface
cp cambozola.jar /var/www/html/zm/
  • Start ZoneMinder
service zm start
  • tick the box for support for the Cambozola addon within your ZoneMinder installation: http://ip-address/zm