Difference between revisions of "Gentoo Install"

From ZoneMinder Wiki
Jump to navigationJump to search
(→‎About ZoneMinder for Gentoo: Added first install command (emerge) and initial draft of mysql setup)
(→‎Additional Packages: - updated some wording as these packages arent that useful with the more common ip cameras being used these days)
Line 94: Line 94:


You may also want to install:
You may also want to install:
* pciutils, to get information about PCI devices to assist in troubleshooting.
* pciutils - this is useful if you have pci based capture cards, probably not required if you intend to use IP cameras.
* usbutils, to get information about USB devices to assist in troubleshooting.
* usbutils - same as pciutils for usb cameras, may not be required.
* syslog-ng, to manage system logs. ZoneMinder will need to be configured to use it. (/etc/syslog-ng/syslog-ng.conf)
* samba - to exchange files with Windows clients/servers.
* vixie-cron, for ZoneMinder to complete scheduled cron jobs.
* samba, to exchange files with Windows clients/servers.
* camsource, lets you serve up web images from your capture card. Can be useful for diagnosis.


These packages are easily installed by typing emerge -a <package_name>
These packages are easily installed by typing emerge --ask <package_name>


== ZoneMinder Installation ==
== ZoneMinder Installation ==

Revision as of 15:55, 18 April 2017

About Gentoo

Gentoo is a distribution that prides itself on being extra-configurable, processor native, and easy to update. Gentoo users usually compile their installation from srouce, but while it's great to nitpick on the details, Gentoo also has the option of installing a precompiled system quickly from a LiveCD.

Why Gentoo?

  • Other distros have a one-size-fits-all approach, including full GUI environments unnecessary for a ZoneMinder CCTV DVR box.
  • Binary distributions make it difficult to locate the appropriate libraries for ZoneMinder to build properly. Packages for these distrubutions often do not include development libraries and headers necessary for building software from source.
  • A Gentoo system is highly configurable, and is easy to update and maintain.
  • Gentoo's portage package system in conjunction with the emerge command makes it much easier to obtain the needed packages for ZoneMinder and whatever else you might need.

What You Will Need

  • A Gentoo LiveCD
  • An internet connection, to download and install the necessary packages

Installing ZoneMinder for Gentoo

There are some ZoneMinder packages (called 'ebuilds') available for Gentoo in the 'portage' tree. https://packages.gentoo.org/packages/www-misc/zoneminder

The ZoneMinder ebuilds are currently (April 2017) masked. You will need to unmask the package

# nano /etc/portage/package.keywords
www-misc/zoneminder ~amd64

you may also want to add the version to /etc/portage/package/unmask

# nano /etc/portage/package.unmask
=www-misc/zoneminder-1.30.2

After unmasking you can now install via the emerge command.

emerge --ask zoneminder

ZoneMinder currently depends on mysql. Gentoo will install dev-db/maria by default unless you configure otherwise. This will need to be configured prior to running ZoneMinder and adding its database.

mysql_secure_installation

Once configured, you will need to add the zm database and install the default tables.

mysql -uroot -p -e "create database zm;"
mysql -uroot -p zm < /usr/share/zoneminder/db/zm_create.sql
mysql -uroot -p

mysql> use zm; grant select,insert,update,lock tables,delete on zm.* to 'zmuser'@localhost identified by 'zmpass';
mysql> flush privileges;
mysql> exit;


config file

configure the included config file . Heres my working version. It includes the database username/password

chickcam ~ # grep ^[A-Za-z] /etc/zm.conf
ZM_VERSION=1.22.3
ZM_PATH_BUILD=>/usr/share/zoneminder
ZM_TIME_BUILD=1170184168
ZM_PATH_BIN=/usr/bin
ZM_PATH_LIB=/usr/lib
ZM_PATH_CONF=/etc
ZM_PATH_WEB   =/
ZM_PATH_CGI =/var/www/localhost/cgi-bin
ZM_WEB_USER=apache
ZM_WEB_GROUP=apache
ZM_DB_HOST=localhost
ZM_DB_NAME=zm
ZM_DB_USER=zm
ZM_DB_PASS=xxxxx
chickcam ~ #     

configuring the camera

I started with 1 camera plugged into localhost.

It may need modules (spca5xx, gspca,etc ) which you will have to emerge or recompile in your kernel

Initially i had a broken image. I checked /dev/video0 had appeared once the camera was configured and changed the permissions to 777

~ # ls -la /dev/video0
lrwxrwxrwx 1 root root 10 Feb 14 18:05 /dev/video0 -> v4l/video0

~ #

In spite of this I had to add the webserver user ( apache ) to the video Italic text group to get the images to display

Installation of Gentoo Linux

Gentoo has its own comprehensive install guide which is regularly updated, this can be found in the Gentoo Handbook.


Additional Packages

You may also want to install:

  • pciutils - this is useful if you have pci based capture cards, probably not required if you intend to use IP cameras.
  • usbutils - same as pciutils for usb cameras, may not be required.
  • samba - to exchange files with Windows clients/servers.

These packages are easily installed by typing emerge --ask <package_name>

ZoneMinder Installation

Overview of ZoneMinder Installation

  • Building ZoneMinder
  • Configuration
  • Initializing the Database
  • Defining Monitors
  • Defining Zones

Maintaining the System

Watchdogs

Avoiding a Full Disk

Automatic FTP of Events

Purge When Full Script