My ongoing experiences with Ubuntu, and later Mythbuntu, as a media center with MythTV. I'm also using the system for a virtual machine server, a mediawiki server and a general all around home infrastructure base.

Sunday, August 12, 2007

Upgrading to Ubuntu 7.04 'Feisty Fawn'

Time to bite the bullet today and upgrade the ubuntu box. So I logged out from the mythv account and logged into my admin account and used the package updater. The first thing it did was tell be it was disabling some third party sources. Then it did some checking and told me it planned to remove 16 packages, install 128 new ones and upgrade 994.

After consenting to that it started the upgrade, which it estimated would take about 30 minutes - it reality it took about an hour. Some things that I was asked during the upgrade:
  • It asked about replacing customized /etc/logins.def - I looked at the diff and saw no changes that that warranted keeping the current version, so I told it to go ahead.
  • Which services should be restarted to use new linssl libraries, I responded with the default which was "ssh".
  • It asked about replacing /etc/mysql/my.cnf - the only change that looked relevant was the "bind-address = 127.0.0.1" line, so I told it go ahead.
  • It asked about replacing /etc/modprobe.d/aliases - the only difference appeared to be a line of the form "alias char-major-10-187 irnet" - I told it go ahead.
  • It asked about replacing /etc/avahi/avahi-daemon.conf - the only difference appeared to be the line "enable-dbus=yes" - I told it to go ahead.
  • It asked about replacing /etc/cups/cupsd.conf - the changes appeared minor and since I no longer have the printer connected I told it go ahead
  • The upgrade failed trying to install install libxml-sax-perl - "subprocess post-installation script returned error exit status 255". This resulted in failures in libxml-simple-perl, xmltv-util, xmltv-gui, xmltv and mythvideo. More below.
  • It asked about replacing /etc/ntp.conf - no differences that mattered to me so I told it to go ahead.
At this point everything hung and I power-cycled. It came back up into mythtv and tried to start it. I canceled that, logged out, and logged back in as an admin. I ran the Update Manager and it did a Partial Upgrade - this failed on the libxml-sax-perl module again.

I rebooted. It tried to start up mythtv automatically but complained the autologin user (which is what is used to automatically log into the mythtv account) wasn't a member of the mythtv group. So I logged in as admin and added autologin to the mythtv group.

At this point mythtv seems to be running fine, but the remote isn't working. I re-installed lirc as described here and that solved that problem.

Back to the libxml-sax-perl module, poking around revealed the source of the problem - I actually had three versions of SAX.pm. The one in /usr/share/perl5 seems to have the required bebian method, but all attempts to get the install to use it crapped out for one reason or another. So rather painfully I ended up uninstalling libxml2 and then reinstalling everything that depending on it. Painful and I'm sure there has got to be a better way.

Lastly, apt-get was giving me the following message:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libmpich1.0c2 libopenexr2c2a mythmusic libarts1c2a libzzip-0-12 kdelibs4c2a
libfaad2-0 python2.4-dev apache2-utils mythphone mythbrowser tetex-base
fftw2 kdelibs-data mythdvd libapr0 liblualib50 mythgallery libwavpack0
gcc-3.4-base mythgame libossp-uuid13 libsvn0 tetex-bin mythflix
librpcsecgss2 libt1-5 libavahi-qt3-1 mythcontrols php4-common netpbm
libcdaudio1 libnetpbm10 mythweather liblua50 libg2c0 mythnews tex-common
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
So I ran 'apt-get autoremove' to correct.
Hmmm, at this point everything seems to be working except for httpd and all of its services (MythWeb, the wiki, etc). Poking around I quickly figured out Apache wasn't installed. So re-installing that came first:
#apt-get install apache2
When asked if I wanted to keep my current configuration file, I answered yes. At this point httpd was running and working, but my wiki, MythTV and phpadmin weren't. Next step was installing php and phymyadmin

#apt-get install php5
...
# apt-get install phpmyadmin

PHPMyAdmin working at this point at http://my.host.name/phpmyadmin/, so I turned my attention to installing MythWeb:
# apt-get install mythweb
Mythweb was now working at http://my.host.name/mythweb/
Back to installing mediawiki:
# apt-get install mediawiki
This installed version 1.7, but it still wasn't working. Looks like I had two installs (mediawiki and mediawiki1.7)? So I removed one:
# rm /etc/apache2/conf.d/mediawiki.conf
And restarted apache:
# /etc/init.d/apache2 restart
That did it. Browsing to http://my.host.name/mediawiki/index.php/Main_Page resulted in a setup menu and a link to configure. I ran through the configuration -

And moved that configuration into place:
# mv /var/lib/mediawiki1.7/config/LocalSettings.php /var/lib/mediawiki1.7/LocalSettings.php
Now the only thing left was to re-secure the wiki.