Installing using ZoneMinder RPMs for SuSE

From ZoneMinder Wiki
Revision as of 13:54, 18 October 2007 by Monex (talk | contribs)
Jump to navigationJump to search

This is a short How-to for installing ZoneMinder on openSuSE with RPMs Currently RPMS are available for openSuSE 10.0, 10.1 and 10.2 architectures are i586 and x86_64.

There are two versions available for every above listed SuSE version even one which requires only the packages that comes with the official SuSE release. These packages have some missing features of ZoneMinder like mjpeg streaming from remote cameras. The other version is build against the packages from packman ([1]) and do not lack of this features. They can be identified by the "mp" in the RPM name, for example ZoneMinder-1.22.3-0.mp.11.i586.rpm.


Installation of openSuSE

Install SuSE on any supported way on your system. Detailed installation instruction are listed at [2].


Installation of ZoneMinder

using YaST

The best and easiest way is to install the ZoneMinder package via YaST. First you have to find out which SuSE version you are using. The urls to the different repositories are:

SuSE 10.0: http://www.liquid-co.de/pub/suse/repositories/10.0/

SuSE 10.1: http://www.liquid-co.de/pub/suse/repositories/10.1/

SuSE 10.2: http://www.liquid-co.de/pub/suse/repositories/10.2/

SuSE 10.3: http://www.liquid-co.de/pub/suse/repositories/10.3/

Now you have to add the adequate repositories to YaST. Start YaST and go to "installation source". Select "add" and choose "http" as protocol. Enter as server "liquid-co.de" and as path "pub/suse/repositories/10.x". For more details on how to add package repositories to YaST go to [3].

Optional you can add one packman repository from [4] so that it is possible to install the RPM build against the packman RPMs with mjpeg streaming support and dependencies to ffmpeg.

Package selection of different ZoneMinder versions

Now go to YaST->Softwaremanagement search for ZoneMinder and select the entry. After the selection the "version" tab is available, so go to it and choose your wanted version (keep in mind that the RPM which contains the "mp" in the RPM name needs the packman repository added to get installed). Then proceed as normal, all other required packages will be resolved due to dependencies.

      • Warning: You can only access the NON mp version this way. Even though both are in the repository Yast only sees and displays the non-mp version. YUM may not work either. I managed to make it work with smart, which magically pulled libraries out of some hat when they were not in any of the standard repositories including packman.

using Yum

You must have already installed Yum to use this way of installation. Yum easily can be installed via Yast. Choose the adequate link for your SuSE version above and download the ZoneMinder.repo file. (http://www.liquid-co.de/pub/suse/repositories/10.x/ZoneMinder.repo) and copy it to /etc/yum.repos.d/. Then run:

yum install ZoneMinder

which will list you the two available versions of ZoneMinder. Choose your wanted version and install ZoneMinder. All required packages will be installed automaticly.

Note: To install the RPM build against the packman RPMs with mjpeg streaming support and dependencies to ffmpeg you must have added the packman repository to Yum before.

Manual installation through rpm command

Download your choosen RPM from the listed repositories. Start root console and run:

rpm -ivh <ZoneMinder package>

Note: When you choose this way you have to resolve the package dependencies all by yourself. So the other methods are recommended.

Setting up MySQL and Apache

After you successfully installed all RPMs start root console. Run the following command to start Apache and MySQL:

rcapache2 start
rcmysql start

When this is the first time you start MySQL follow the steps on the screen to setup a MySQL root password. When you plan to start ZoneMinder at boot, you can now add Apache and MySQL for automatic start by typing:

chkconfig apache2 on
chkconfig mysql on

Note: Of course you can also use YaST Runleveleditor for this task.


Initializing ZoneMinder

Log in into root console and run:

zm_database_init

and follow the steps on the screen. This script will setup the ZoneMinder database, creating the zm_admin user for database access and update the /etc/zom.conf with the new set password for zm_admin user. Example output:

zm_database_init
INFO: when db is correctly installed and you just reinstalled rpm, the answer all questions with 'n'
new install create db
run mysql command to create db as user root? [Y/n]:
enter mysql root password:
create user zm_admin for zoneminder? [Y/n]:
Enter new passwd for user zm_admin:
retype password:

should i update config file with new passwd? [Y/n]:
removing lock file
done

Then run:

rczm start

to start ZoneMinder. When you decided to start ZoneMinder at boot time then enter:

chkconfig zm on

This command will start ZoneMinder on boot time after apache2 and mysql are started.


After successfully installation the ZoneMinder web interface can be reached at http://localhost/zm

Hint: Since openSuSE 10.3 PHP short_open_tag is disabled by default. The RPM now includes a config file for apache to avoid a manual edit. The only thing you have to do is to restart apache after the installation (rcapache2 restart)!


Note: When trying to run rczm start without running zm_database_init the start will fail.

Update ZoneMinder

When new version of ZoneMinder or of the RPMs are available you might want to update your existing installation. You can use YaST again for this task. Before you enter YaST run "rczm stop" to stop ZoneMinder. Go to YaST -> Softwaremanagement and search for ZoneMinder. Switch the checkbox to "upgrade" (look for icon explaining in YaST or in textmode for ">"). Choose your wanted version as described in Installation of ZoneMinder and proceed. After installation run zm_database_init and follow the steps on the screen to update your database.

Note: When upgrading without ZoneMinder version change, this happens for example when upgrading from one rpm version to a later RPM version (for example from ZoneMinder-1.22.3-10.x86_64.rpm to ZoneMinder-1.22.3-11.x86_64.rpm ) then the database is already installed and no database upgrade is necessary. In this case, when you will be asked weather to create zm database or to create the zoneminder database user, you have to answer all questions from the zm_database_init script with "no".

Note: If not stopping ZoneMinder (rczm stop) before upgrading you might get an information box with "... failed". you can ignore this box, but after installation ZoneMinder will be stopped.

Upgrade from manual installation to RPM

When upgrading from a manual installation from ZoneMinder to any RPM version remove all related zoneminder files except the config file /etc/zm.conf. Then install the RPM and follow the steps listed in Installation of ZoneMinder.


Uninstalling ZoneMinder

If you are uninstalling ZoneMiner the database will be untouched, the recorded events and logfiles will reside on the disk and the zm.conf file in /etc will be copied to zm.conf.rpmsave.