Wednesday, 30 December 2015

Ubuntu catch-up

It's be a long while since my last blog post. Have to say that I have mostly been commenting over on the time sink that is Facebook. Anyway I had a few days off over the Xmas break to catch up on a few housekeeping tasks. I don't mean re-roofing the shed, pulling leaves out of the pond, adding compost to the sinking vegtable patch or clearing the accumulating kibble from the office book shelves. What I mean is getting the Ubuntu linux machine up to date.  I have this hotrod machine that has a fairly complex set up that includes being able to boot into Windows 7, Windows 10 and Ubuntu Linux, used ocasionaly for various digital exploring and research projects.

In a fit of reckless enthusiasm the upgrade to 14.04 Ubuntu was triggered. After the usual process a reboot launched. This was where the fun started, the GUI login screen shows but in a low resolution version. Logging in gave a few flashes then back to the login screen. This is not a uncommon issue that relates to having an Nvidia plug-in graphics card that needs updated drivers.

First step was to get console access to the system using F1 or ssh in from another system (if previously configured).  

Next was update the Nvidia driver using

$  sudo apt-get install nvidia-current

However this ended with

Building for 3.2.0-68-generic and 3.13.0-61-generic
Building for architecture x86_64
Module build for the currently running kernel was skipped since the
kernel source for this kernel does not seem to be installed.
Building initial module for 3.13.0-61-generic

IE a successful build for the latest kernel version but not he one running on the system, which was rather old as shown by...

$ uname -a
Linux bb02-u910 3.2.0-68-generic #102-Ubuntu SMP Tue Aug 12 22:02:15 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

3.2 being much older than 3.13.0

This was not expected, I had no particular need to run an old kernel on the updated system.  Indeed looking at the version table 3.2 is well behind the rest of the system, dating back to Ubuntu version 12.04

The kernel version is loaded during the system start up sequence by GRUB. Looking in /boot shows the configuration files and menus file that offer the kernel version during the start up sequence. The update-grub command should be adding the latest built kernels to the menu offered during the start up sequence. Update-grub appears to be working but the new kernels were not offered, it was instead showing a list of older kernels. Some research showed that GRUB needed updating. After checking which actual device is used the update sequence went through first time.

With Grub updated, the new kernel version 3.13.0-61-generic loaded and the graphics driver was in place. Success.

Notes and Links:

To get console -  use
  • Ctrl-Alt-F1 shortcut keys to switch to the first console.
    To switch back to Desktop mode, use the Ctrl-Alt-F7 shortcut keys.
    Or ssh in from another system,
Update Nvidia driver   or this way if you have a working GUI login
Check the Kernel version against name -a
Grub version update from 0.97 to 1.96 - Did not need to use boot recovery disk as the MBR was fine.

Whilst the above may seem quite complicated the main message to understand this that there is help out there especially on the Ubuntu forums.