Ok so going along my merry-developer-way when I needed to run a perl program
to do some post processing of PostgreSQL logs. In the process of trying to download this and run it I realized ‘once again’ that the version of Ubuntu I was running
Yes, yes I ignored all of the, do you want to update now warnings, because quite honestly when I sit down at my linux box I am in get-things-done mode and I dont have time for any fallout related to upgrades. So in the process of updating to
12.10 had be end-of-lifed in May 2014.
, I am going to be doing a drive-by of
yes, yes for the perl issue I could have used cpan to work around this issue as well, but I really needed to upgrade anyway.
I am going to have to do this update on a few machines so I figured I would make a note or two, and hopefully help someone else out along the way.
Any time you do an update you are going to want to have a few mental notes in place. These are way less important these days, as Ubuntu-just-works, but I am going to point them out anyway because once you start an install or upgrade its way more difficult to figure out.
OS updating from -> too
What CPU am I running?
$ cat /proc/cpuinfo |grep "model name" |tail -1
model name : Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz
How much ram do I have?
$ free -m |grep Mem
Mem: 8026 4484 3542 0 438 1524
What storage media am I installed on?
First figure out what is mounted where.
$ mount |grep "/dev"
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
Here we can see that we have a drive on a scsi controller. Next get an idea of how the drive is partitioned.
$ sudo fdisk -l /dev/sda
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00050b2e
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 1936879615 968438784 83 Linux
/dev/sda2 1936881662 1953523711 8321025 5 Extended
/dev/sda5 1936881664 1953523711 8321024 82 Linux swap / Solaris
Finally get a human-readable idea of how much disk space is used.
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 909G 118G 746G 14% /
none 4.0K 0 4.0K 0% /sys/fs/cgroup
udev 4.0G 4.0K 4.0G 1% /dev
tmpfs 803M 1.3M 802M 1% /run
none 5.0M 4.0K 5.0M 1% /run/lock
none 4.0G 46M 3.9G 2% /run/shm
none 100M 8.0K 100M 1% /run/user
What kernel version am I running?
$ uname -a
Linux jds-LENOVO-3000 3.5.0-43-generic #66-Ubuntu SMP Wed Oct 23 17:33:43 UTC 2013 i686 i686 i686 GNU/Linux
What version of ubuntu am I running?
$ sudo lsb_release -a
LSB Version: core-2.0-ia32:core-2.0-noarch:core-3.0-ia32:core-3.0-noarch:core-3.1-ia32:core-3.1-noarch:core-3.2-ia32:core-3.2-noarch:core-4.0-ia32:core-4.0-noarch
Distributor ID: Ubuntu
Description: Ubuntu 12.10
: 8 gigs of ram
: /dev/sda1 700+ gigs free.
: Ubuntu 12.10
Since I was a bit out of date I did the following.
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
This did not go perfect, I got alot of complaints about my
pointing to things that were not found because they were so out of date.
$ sudo do-release-upgrade --check-dist-upgrade-only --devel-release
Checking for a new Ubuntu release
Your Ubuntu release is not supported anymore.
For upgrade information, please visit:
New release '13.10' available.
Run 'do-release-upgrade' to upgrade to it.
Third party sources disabled
Some third party entries in your sources.list were disabled. You can
re-enable them after the upgrade with the 'software-properties' tool
or your package manager.
26 installed packages are no longer supported by Canonical. You can
still get support from the community.
73 packages are going to be removed. 335 new packages are going to be
installed. 1641 packages are going to be upgraded.
You have to download a total of 997 M. This download will take about
5 hours with your connection.
Installing the upgrade can take several hours. Once the download has
finished, the process cannot be canceled.
After several hours, checking a few ‘keep the package distributed versions of configuration’, and a reboot I was running Saucy.
After rebooting my new Saucy Distro I now have
I run Ubuntu because it-just-works and leaves all of the system management headaches at the door. However no linux distribution is completly bullet prof, because they are installing on hardware in-the-wild and there are just too many variables to consider. Here were my woe’s after installing Saucy.
My speakers did not work
One of my openbox menus did not work
My python virtual envs are now all broken.
I realized after the update that sound did not work through the speakers. Sound did however work through the audio out line, if I just plugged my headphones directly into there. I am going to try to avoid cracking the case on my box here to see which audio card is installed.
Fire up gnome-control-center
$ sudo gnome-control-center
click on the Hardware-> sound
Poked around with this a bit and had no success.
Digging into the Ubuntu community I found this guide
Handle Intel Sound Howto
which I followed and mostly put me on the correct path.
$ cat /proc/asound/card0/codec* | grep Codec
Codec: Analog Devices AD1988
What can I find out about the Analog Devices Chipset?
$ zcat /usr/share/doc/alsa-base/driver/HD-Audio-Models.txt.gz |less
--- snip ---
6stack-dig ditto with SPDIF
3stack-dig ditto with SPDIF
laptop 3-jack with hp-jack automute
laptop-dig ditto with SPDIF
auto auto-config reading BIOS (default)
$ sudo alsa force-reload
This did not work. I dug into some
linux cross reference 3.11 Documentation
for this version of my kernel. This brought up the question, am I using the alsa or oss sound subsystem? Which one should I be using? A bit more digging on the net produced this document
Intel High Definition Audio Bridge
$ lsmod |grep snd
$ lsmod |grep snd
snd_seq_midi 13132 0
snd_seq_midi_event 14475 1 snd_seq_midi
snd_seq 55383 2 snd_seq_midi_event,snd_seq_midi
snd_rawmidi 25094 1 snd_seq_midi
snd_seq_device 14137 3 snd_seq,snd_rawmidi,snd_seq_midi
snd_hda_codec_hdmi 40508 1
snd_hda_codec_analog 75523 1
snd_hda_intel 42658 7
snd_hda_codec 164003 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_analog
snd_hwdep 13272 1 snd_hda_codec
snd_pcm 89488 4 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
snd_page_alloc 14230 2 snd_pcm,snd_hda_intel
snd_timer 24447 2 snd_pcm,snd_seq
snd 60790 24 snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device,snd_hda_codec_analog,snd_seq_midi
soundcore 12600 1 snd
Dig into the kernel directory:
$ cd /lib/modules/3.11.0-12-generic/kernel/sound
$ find . -name "snd*hda*"
Humm, what I really want to do is configure a kernel
Build a kernel in ubuntu
and see if they left off support for my card. This seems like a bit of overkill. So lets just-reboot and see if that fixes the problem.
Reboot did not fix the issue. I am now going to fire Rhythmbox and see if it works. It did not work, but it did complain about a missing lib.
Rhythmbox complained about a missing MPEG-1 lib. Which I had installed.
I tried to fix this by adding the missing modules.
$ sudo synaptic
This still did not fix the issue. I am seasoned at solving issues like this one however I have also learned to time-manage
Broken Sound: Workarounds are good
Its 4th and long, punt. For now I have moved my speaker cable to my line in from the front, and this works. I will revisit this issue on the Trusty Tahr update, when I have time.
Broken python virtualenvs:
I wrote a separate entry entitled
Fixing a broken virtualenv after a python update
to fix this issue.