This howto is intended as a guide through the steps required to get a Slackware 12.2 system installed and running ZoneMinder. Intentionally avoided are the discussion of hardware specifics, apache setup and any system "tweaks" as they are beyond the scope of this document. The intent is to aid (to a point) only in getting ZoneMinder up and running on a basic Slackware install. Caveat lector - "If you break it, you own all of the pieces."
As far as hardware goes, chances are good that if your hardware is supported by the Video For Linux drivers it will work with ZoneMinder.
For help with anything that isn't specifically addressed in this guide or more in depth help, I suggest that you keep in mind that "Google is your friend", as are the forums.
Hope it helps,
This guide should work with Slackware 13.0 as well, provided the appropriate FFMPEG libraries are used.
Install Slackware 12.2
- Get a Slackware 12.2 system installed and running.
Download the Slackware dvd from somewhere. Torrents are a good place to download if you can wait. Burn it and boot it.
Login and create your disk partitions by running fdisk or cfdisk.
Run setup and install the system (I'm lazy, so I choose "install everything".)
Be sure to enable httpd and mysqld.
Reboot and then login.
Edit /etc/httpd/httpd.conf and fix up apache by setting a hostname, enabling php and adding a virtual host.
Run in a terminal:
You will (or should) have to edit /etc/modprobe.conf to enable your capture card. (see note above)
At this point you may want to install XAWTV (see below) and verify that your hardware is working.
Hint - People are often seen posting in the forums while fighting it out with hardware, while not realizing that specifying the device identifier /dev/video will not work. And that's because it won't ! Specifying /dev/videoX (where X is a number), will. Make note of the device number. It's important.
Set Up MySql
Copy the most appropriate /etc/my-*.cnf files to /etc/my.cnf and edit as (if) required.
Set up mysql databases with:
Start mysqld - (needs to be running for perl tests)
Update Perl And Install Required Modules
Update perl and install any dependencies (make life easy and accept all of the defaults.)
#perl -MCPAN -e shell cpan>install MD5 cpan>install Bundle::CPAN cpan>reload cpan cpan>install LWP::UserAgent cpan>install Date::Manip cpan>install MIME::Lite cpan>install MIME::Entity cpan>install DBD::mysql cpan>install Sys::Mmap cpan>install X10::ActiveHome cpan>install PHP::Serialization cpan>install Module::Load
Install ffmpeg dependencies
Go to a Slacky repository, find, download and install the following packages - (they are all within 2 or 3 directories)
multimedia/amrnb-188.8.131.52-i486-2as.tgz multimedia/amrwb-184.108.40.206-i486-2as.tgz multimedia/dirac-1.0.0-i486-2as.tgz multimedia/faac-1.26-i486-4sl.tgz multimedia/faad2-2.6.1-i486-5sl.tgz multimedia/lame-3.98.2-i486-2sl.tgz multimedia/speex-1.2rc1-i486-2dav.tgz multimedia/x264-20090107-i486-1as.tgz multimedia/xvidcore-1.2.1-i486-2sl.tgz libraries/imlib2-1.4.2-i486-3sl.tgz libraries/libdc1394-2.1.0-i486-1sl.tgz libraries/libgsm-1.0.12-i686-4as.tgz libraries/libnut-20081213-i686-1as.tgz libraries/libusb1-1.0.0-i486-1as.tgz libraries/schroedinger-1.0.5-i486-1as.tgz
On the same site you pulled the previous files from, in the multimedia directory, find the ffmpeg directory, go into the src dir and get these 2 files
Then source the install file -
Which will download the latest svn, build it and create an installable .tgz. Install it once done.
Install XAWTV (Optional, but recommended)
If you want XAWTV for setting up and testing hardware:
Download, build and install (read the included docs).
tv-fonts-1.1.tar.bz2 zvbi-0.2.33.tar.bz2 xawtv-20070625-114215.tar.gz
When configuring zvbi and xawtv use the options --prefix=/usr and --sysconfdir=/etc
Download ZM 1.23.3 or ZM 1.24.
Untar and cd into the zm-"version" directory and run:
#./configure --with-webdir=/var/www/htdocs --with-cgidir=/srv/httpd/cgi-bin --prefix=/usr --sysconfdir=/etc > configured_this 2>&1
Take look through "configured_this" and if you are satisfied that all is good, run:
#make > built_this 2>&1
Look through "built_this" and if you are satisfied that you got a clean build go ahead and run:
If you'd prefer to do a test run on make install, run:
#make -n install > install_this 2>&1
Look over install_this and if you are happy with what you see, then run make install
Install ZM Database and Finalize MySql Installation
While in the zm-"version" directory run:
#mysql > source db/zm_create.sql > use mysql; > grant select,insert,update,delete on zm.* to 'zmuser'@localhost identified by 'zmpass'; > quit;
Set a root password for mysql and lock it down. Run the following:
#cp scripts/zm /etc/rc.d/rc.zm #chmod a+x /etc/rc.d/rc.zm
And now, fire up ZoneMinder
To start ZoneMinder at boot, run:
#echo "/etc/rc.d/rc.zm start " /etc/rc,d/rc.local
And you're done ..
Test It Out
From a command line prompt run:
Start up a browser and point it at http://localhost/zm
If all went well, you should see a ZoneMinder control panel.