Just a few days ago, I did a net inst of Debian 4.0 (etch) and a very simple apt-get install zoneminder, and I had a complete zoneminder up and running in about an hour.
Then Debian 5.0 (lenny) was released, and now it appears that nothing will work.
I tried to apt-get zoneminder on Lenny, and got messages that ffmpeg is not going to be installed. I did apt-get ffmpeg, and then it deleted some other libs that were required, so it was a no win. A little google reveals a "zoneminder / debian lenny" howto that is now removed from the web. And a bug report (closed) that seems to point to problems with ffmpeg in lenny.
So I figured I would just install etch instead, and run zoneminder there. Curious, I boot from the NetInst 4.0 floppy, and choose a 2.6.18 kernel and choose a mirror for apt (kernel.org) and when the install completes, I got Debian 5.0 lenny installed, not the 4.0 etch that I wanted. Ouch.
I found a (closed) bug report that says that using the lenny installer and overriding lenny for etch, does not work when a mirror is selected instead of the default ftp.debian.org. So I go back to try the netinst 4.0 disk and use ftp.debian.org instead. Bingo, I got a (minimal) etch installed. Then I add the "unstable" entry to sources.list and do a apt-get install zoneminder, figuring I am on the road to the successful install I did a few days ago. No such luck. Now it complains that libavcodec51 will not be installed.
So, I guess in the attempt to get ffmpeg/libavcodec51 running on lenny, somebody broke it for those of us who would just like to get it working on etch.
Also, the debian installer is broken w/rt using a mirror for the now older 4.0 etch release. Try to install etch, and get lenny if you try to use a mirror.
If you can help guide me in the right direction, it would be greatly appreciated. Or maybe just report that the bugs have been worked out and ZM will now install on Debian.
My guess is that this will also affect Unbuntu, although I have not tried..
My last resort is to yank the drive out of my running Etch/ZM machine and mirror it to a new drive for the new box I have. That is the only way to get a working ZM on Debian that I can think of.
I hope this post helps somebody else, and saves some time. I have wasted an entire day only to learn it is broken (afaik) and the bugs that might fix it have been closed already.
Thanks.
ZM install broken in Debian Lenny and now Etch too-workaroun
ZM install broken in Debian Lenny and now Etch too-workaroun
Last edited by tburt11 on Mon Mar 30, 2009 6:00 pm, edited 1 time in total.
UPDATE
OK, I can add some helpful information here.
It seems that at Debconf 7, somebody mentioned that ffmpeg contains some code that is copyrighted or patented to a person who is responsible for making sure this code stays out of the released debian package. Understandably, they took prompt measures and stripped the code from ffmpeg, (and perhaps libavcodec?) for the official packaged release. This broke the Zoneminder debian package, which includes ffmpeg as a dependecy, even though ffmpeg is not required.
I do not know if zoneminder was actually using the offending routines, or if as it appears, the abrupt removal of the forbidden code caused other breakage, but the result is that today, the zoneminder deb package is broken in Debian Lenny.
Perhaps the maintainer will see this post and build a new package without the ffmpeg dependency. I for one, do not use the ffmpeg features in zoneminder.
It seems that at Debconf 7, somebody mentioned that ffmpeg contains some code that is copyrighted or patented to a person who is responsible for making sure this code stays out of the released debian package. Understandably, they took prompt measures and stripped the code from ffmpeg, (and perhaps libavcodec?) for the official packaged release. This broke the Zoneminder debian package, which includes ffmpeg as a dependecy, even though ffmpeg is not required.
I do not know if zoneminder was actually using the offending routines, or if as it appears, the abrupt removal of the forbidden code caused other breakage, but the result is that today, the zoneminder deb package is broken in Debian Lenny.
Perhaps the maintainer will see this post and build a new package without the ffmpeg dependency. I for one, do not use the ffmpeg features in zoneminder.
Workaround for debian net install etch vs lenny
As I mentioned previously, when I went to install Debian Etch from an Etch Net install boot disk, I got Lenny instead. What? Yes, If you choose to install from a mirror site, the boot disk resets your target distribution to "current", which worked fine as long as Etch was current, but now that Lenny is current, you get Lenny instead.
To work around this BUG, I downloaded the complete set of install DVD's and installed Etch from Disk 1, which contains everything needed for a full install.
Rather than create another 3 DVD's and since Terrabyte drives are now less than $100 USD, I put the ISO's into a directory and mount them read only when I need them. I added a couple of lines to /etc/apt/sources.list and now I can do all of my installs painlessly using the older (but wiser) etch distribution.
The mount command for the iso is something like:
mount /dvd/debian-40r7-i386-DVD-1.iso /dvd/1 -o loop=/dev/loop1 -o ro
and the entry for sources.list looks like:
deb file:/dvd/1 etch main contrib
I hope this helps somebody.. someday.
To work around this BUG, I downloaded the complete set of install DVD's and installed Etch from Disk 1, which contains everything needed for a full install.
Rather than create another 3 DVD's and since Terrabyte drives are now less than $100 USD, I put the ISO's into a directory and mount them read only when I need them. I added a couple of lines to /etc/apt/sources.list and now I can do all of my installs painlessly using the older (but wiser) etch distribution.
The mount command for the iso is something like:
mount /dvd/debian-40r7-i386-DVD-1.iso /dvd/1 -o loop=/dev/loop1 -o ro
and the entry for sources.list looks like:
deb file:/dvd/1 etch main contrib
I hope this helps somebody.. someday.
How did you verify you ended up w/lenny after an etch netinst?
I thought I ended up w/etch after I did the same and after doing a apt-get dist-upgrade had a bunch of new packages and kernel, figured I had etch and upgraded to lenny.
Perhaps I need to run through it again, refresh my memory and findings.
I thought I ended up w/etch after I did the same and after doing a apt-get dist-upgrade had a bunch of new packages and kernel, figured I had etch and upgraded to lenny.
Perhaps I need to run through it again, refresh my memory and findings.
OK, just ran through an etch/deb 4.0r7 install.
sources.list shows etch, not lenny.
cat /etc/debian_version shows etch
kernel is 2.6.18-6-486
update, configure, install, get a base system put together, yada yada:
dpkg-reconfigure locales (add en_US ISO-8859-1)
/etc/fstab (add 2nd HD)
/etc/network/interfaces (add wan and lan interfaces, nuke dhcp)
/etc/bash.bashrc (set prompt, term header and tab output)
/root/.bashrc (source the above)
/etc/hosts (update lan hosts)
/etc/apt/sources.list (remark cdrom)
apt-get update
ssh-keygen -t rsa
apt-get install openssh-server
reboot
apt-get install rsync vim logwatch logrotate zip unzip bzip2 \
samba build-essential psmisc ssmtp ntp ntpdate apache2 php5 \
phpmyadmin mysql-server mysql-client
cp /usr/share/logwatch/default.conf/logwatch.conf /etc/logwatch/conf/
nano /etc/samba/smb.conf (add root share)
smbpasswd -L -a root
/etc/init.d/samba restart
/etc/ssmtp/ssmtp.conf (configure to offload all mail to host w/mail server)
cd /usr/local/src
wget http://prdownloads.sourceforge.net/weba ... 50_all.deb
dpkg -i webmin_1.450_all.deb
apt-get install --fix-broken
cp -avpr /mnt/hdb1/debiwan/new_rsync/usr/local/etc /usr/local/ (grab my firewall, cron scripts etc)
ln -s /usr/local/etc/init.d/iptables004 /etc/init.d/iptables004
update-rc.d iptables004 defaults
/etc/ntp.conf (config stratum 3 ntp server)
mkdir -p /aux1/backups/Databases (where cron database dumps go)
reboot again, just for grins, watch for any errors.
This completes a shiny new etch install. Zoneminder is next (by all means make any suggestions):
ssh -X <server>
nano /etc/apt/sources.list (add contrib non-free everywhere)
apt-get update
apt-get install xserver-xorg xorg xawtv
check some stuff:
dmesg | grep bttv (make sute the card was detected)
xawtv -hwscan
v4lctl -c /dev/video0 list
nano ~/.xawtv - add
[defaults]
group = main
norm = NTSC
input = Composite0
capture = grabdisplay
color = 50%
bright = 50%
hue = 50%
contrast = 50%
nano /etc/X11/app-defaults/Xawtv - remark what pukes:
Warning: Cannot convert string "-*-ledfixed-medium-r-*--39-*-*-*-c-*-*-*" to type FontStruct
Check the camera, adjust settings if desired:
xawtv -nodga -device /dev/video0
nano /etc/sysctl.conf - add:
kernel.shmall=134217728
kernel.shmmax=134217728
reboot
cd /usr/local/src/
wget http://debian.oregonstate.edu/debian/po ... 3_i386.deb
dpkg -i zoneminder_1.23.3-3_i386.deb
apt-get install -f
dpkg -i zoneminder_1.23.3-3_i386.deb
Selecting previously deselected package zoneminder.
(Reading database ... 30621 files and directories currently installed.)
Unpacking zoneminder (from zoneminder_1.23.3-3_i386.deb) ...
dpkg: dependency problems prevent configuration of zoneminder:
zoneminder depends on libavcodec51 (>= 0.svn20080206-8) | libavcodec-unstripped-51 (>= 0.svn20080206-8); however:
Package libavcodec51 is not installed.
Package libavcodec-unstripped-51 is not installed.
zoneminder depends on libavformat52 (>= 0.svn20080206-8) | libavformat-unstripped-52 (>= 0.svn20080206-8); however:
Package libavformat52 is not installed.
Package libavformat-unstripped-52 is not installed.
zoneminder depends on libavutil49 (>= 0.svn20080206-8) | libavutil-unstripped-49 (>= 0.svn20080206-8); however:
Package libavutil49 is not installed.
Package libavutil-unstripped-49 is not installed.
zoneminder depends on libc6 (>= 2.7-1); however:
Version of libc6 on system is 2.3.6.ds1-13etch9+b1.
zoneminder depends on libgnutls26 (>= 2.4.0-0); however:
Package libgnutls26 is not installed.
zoneminder depends on libpcre3 (>= 7.4); however:
Version of libpcre3 on system is 6.7+7.4-4.
zoneminder depends on libphp-serialization-perl; however:
Package libphp-serialization-perl is not installed.
dpkg: error processing zoneminder (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
zoneminder
Hummm. how about add to sources.list:
deb http://ftp.be.debian.org/debian/ unstable main
apt-get update
oops - E: Dynamic MMap ran out of room
nano /etc/apt/apt.conf.d/70debconf - add
APT::Cache-Limit "25000000";
apt-get update
apt-get install zoneminder
Reading package lists... Done
Building dependency tree... Done
zoneminder is already the newest version.
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
zoneminder: Depends: libavcodec51 (>= 0.svn20080206-8) but it is not installable or
libavcodec-unstripped-51 (>= 0.svn20080206-8) but it is not installable
Depends: libavformat52 (>= 0.svn20080206-8) but it is not going to be installed or
libavformat-unstripped-52 (>= 0.svn20080206-8) but it is not installable
Depends: libavutil49 (>= 0.svn20080206-8) but it is not going to be installed or
libavutil-unstripped-49 (>= 0.svn20080206-8) but it is not installable
Depends: libc6 (>= 2.7-1) but 2.3.6.ds1-13etch9+b1 is to be installed
Depends: libgnutls26 (>= 2.4.0-0) but it is not going to be installed
Depends: libpcre3 (>= 7.4) but 6.7+7.4-4 is to be installed
Depends: libphp-serialization-perl but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
Ok!
apt-get -f install
apt-get install zoneminder
Reading package lists... Done
Building dependency tree... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
zoneminder: Depends: libavcodec51 (>= 0.svn20080206-8) but it is not installable or
libavcodec-unstripped-51 (>= 0.svn20080206-8) but it is not installable
E: Broken packages
apt-cache policy libavcodec51
libavcodec51:
Installed: (none)
Candidate: (none)
Version table:
Perhaps removing ffmpeg from the ZM deps would do the trick.
sources.list shows etch, not lenny.
cat /etc/debian_version shows etch
kernel is 2.6.18-6-486
update, configure, install, get a base system put together, yada yada:
dpkg-reconfigure locales (add en_US ISO-8859-1)
/etc/fstab (add 2nd HD)
/etc/network/interfaces (add wan and lan interfaces, nuke dhcp)
/etc/bash.bashrc (set prompt, term header and tab output)
/root/.bashrc (source the above)
/etc/hosts (update lan hosts)
/etc/apt/sources.list (remark cdrom)
apt-get update
ssh-keygen -t rsa
apt-get install openssh-server
reboot
apt-get install rsync vim logwatch logrotate zip unzip bzip2 \
samba build-essential psmisc ssmtp ntp ntpdate apache2 php5 \
phpmyadmin mysql-server mysql-client
cp /usr/share/logwatch/default.conf/logwatch.conf /etc/logwatch/conf/
nano /etc/samba/smb.conf (add root share)
smbpasswd -L -a root
/etc/init.d/samba restart
/etc/ssmtp/ssmtp.conf (configure to offload all mail to host w/mail server)
cd /usr/local/src
wget http://prdownloads.sourceforge.net/weba ... 50_all.deb
dpkg -i webmin_1.450_all.deb
apt-get install --fix-broken
cp -avpr /mnt/hdb1/debiwan/new_rsync/usr/local/etc /usr/local/ (grab my firewall, cron scripts etc)
ln -s /usr/local/etc/init.d/iptables004 /etc/init.d/iptables004
update-rc.d iptables004 defaults
/etc/ntp.conf (config stratum 3 ntp server)
mkdir -p /aux1/backups/Databases (where cron database dumps go)
reboot again, just for grins, watch for any errors.
This completes a shiny new etch install. Zoneminder is next (by all means make any suggestions):
ssh -X <server>
nano /etc/apt/sources.list (add contrib non-free everywhere)
apt-get update
apt-get install xserver-xorg xorg xawtv
check some stuff:
dmesg | grep bttv (make sute the card was detected)
xawtv -hwscan
v4lctl -c /dev/video0 list
nano ~/.xawtv - add
[defaults]
group = main
norm = NTSC
input = Composite0
capture = grabdisplay
color = 50%
bright = 50%
hue = 50%
contrast = 50%
nano /etc/X11/app-defaults/Xawtv - remark what pukes:
Warning: Cannot convert string "-*-ledfixed-medium-r-*--39-*-*-*-c-*-*-*" to type FontStruct
Check the camera, adjust settings if desired:
xawtv -nodga -device /dev/video0
nano /etc/sysctl.conf - add:
kernel.shmall=134217728
kernel.shmmax=134217728
reboot
cd /usr/local/src/
wget http://debian.oregonstate.edu/debian/po ... 3_i386.deb
dpkg -i zoneminder_1.23.3-3_i386.deb
apt-get install -f
dpkg -i zoneminder_1.23.3-3_i386.deb
Selecting previously deselected package zoneminder.
(Reading database ... 30621 files and directories currently installed.)
Unpacking zoneminder (from zoneminder_1.23.3-3_i386.deb) ...
dpkg: dependency problems prevent configuration of zoneminder:
zoneminder depends on libavcodec51 (>= 0.svn20080206-8) | libavcodec-unstripped-51 (>= 0.svn20080206-8); however:
Package libavcodec51 is not installed.
Package libavcodec-unstripped-51 is not installed.
zoneminder depends on libavformat52 (>= 0.svn20080206-8) | libavformat-unstripped-52 (>= 0.svn20080206-8); however:
Package libavformat52 is not installed.
Package libavformat-unstripped-52 is not installed.
zoneminder depends on libavutil49 (>= 0.svn20080206-8) | libavutil-unstripped-49 (>= 0.svn20080206-8); however:
Package libavutil49 is not installed.
Package libavutil-unstripped-49 is not installed.
zoneminder depends on libc6 (>= 2.7-1); however:
Version of libc6 on system is 2.3.6.ds1-13etch9+b1.
zoneminder depends on libgnutls26 (>= 2.4.0-0); however:
Package libgnutls26 is not installed.
zoneminder depends on libpcre3 (>= 7.4); however:
Version of libpcre3 on system is 6.7+7.4-4.
zoneminder depends on libphp-serialization-perl; however:
Package libphp-serialization-perl is not installed.
dpkg: error processing zoneminder (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
zoneminder
Hummm. how about add to sources.list:
deb http://ftp.be.debian.org/debian/ unstable main
apt-get update
oops - E: Dynamic MMap ran out of room
nano /etc/apt/apt.conf.d/70debconf - add
APT::Cache-Limit "25000000";
apt-get update
apt-get install zoneminder
Reading package lists... Done
Building dependency tree... Done
zoneminder is already the newest version.
You might want to run `apt-get -f install' to correct these:
The following packages have unmet dependencies:
zoneminder: Depends: libavcodec51 (>= 0.svn20080206-8) but it is not installable or
libavcodec-unstripped-51 (>= 0.svn20080206-8) but it is not installable
Depends: libavformat52 (>= 0.svn20080206-8) but it is not going to be installed or
libavformat-unstripped-52 (>= 0.svn20080206-8) but it is not installable
Depends: libavutil49 (>= 0.svn20080206-8) but it is not going to be installed or
libavutil-unstripped-49 (>= 0.svn20080206-8) but it is not installable
Depends: libc6 (>= 2.7-1) but 2.3.6.ds1-13etch9+b1 is to be installed
Depends: libgnutls26 (>= 2.4.0-0) but it is not going to be installed
Depends: libpcre3 (>= 7.4) but 6.7+7.4-4 is to be installed
Depends: libphp-serialization-perl but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
Ok!
apt-get -f install
apt-get install zoneminder
Reading package lists... Done
Building dependency tree... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
zoneminder: Depends: libavcodec51 (>= 0.svn20080206-8) but it is not installable or
libavcodec-unstripped-51 (>= 0.svn20080206-8) but it is not installable
E: Broken packages
apt-cache policy libavcodec51
libavcodec51:
Installed: (none)
Candidate: (none)
Version table:
Perhaps removing ffmpeg from the ZM deps would do the trick.
Re: Fatboy Question.
Re: Fatboy Question.
Very nice and thorough review. You do not state that you selected a mirror when doing the netinst install. The bug is triggered when you select a mirror. I confirmed lenny by checking the kernel uname -a and checking the sources.list file. That told me enough and I re-installed without using a mirror, and got etch.
I got the same results as you have documented.
I got a working install by downloading the complete install DVD's, which, I would imagine have not (yet?) been "fixed" w/rt ffmpeg.
Very nice and thorough review. You do not state that you selected a mirror when doing the netinst install. The bug is triggered when you select a mirror. I confirmed lenny by checking the kernel uname -a and checking the sources.list file. That told me enough and I re-installed without using a mirror, and got etch.
I got the same results as you have documented.
I got a working install by downloading the complete install DVD's, which, I would imagine have not (yet?) been "fixed" w/rt ffmpeg.
Well, whatca know...
libavcodec51 or 52 has been fixed or I'm holding my mouth right.
/etc/apt/sources.list (added:)
deb http://ftp.be.debian.org/debian/ unstable main
deb http://www.debian-multimedia.org etch main
apt-get update
apt-get install zoneminder
chmod 777 /dev/video*
It works!!!!!!!
Nearly a month w/out ZM, it's been hell.
libavcodec51 or 52 has been fixed or I'm holding my mouth right.
/etc/apt/sources.list (added:)
deb http://ftp.be.debian.org/debian/ unstable main
deb http://www.debian-multimedia.org etch main
apt-get update
apt-get install zoneminder
chmod 777 /dev/video*
It works!!!!!!!
Nearly a month w/out ZM, it's been hell.