10

With a recent update (I'm on 14.04 LTS), Wine suddenly stopped working. It turns out this has already been reported at WineHQ where the related bug reports are linked.

The advice there is to downgrade the kernel while awaiting the fix, referring users back to their distros on advice for doing the "downgrade". There are quite a few Q&As about this, but the 14.04 specific ones don't appear to meet this need. (And the "similar questions" in the sidebar are often quite old.)

How should the kernel be safely downgraded while not prohibiting automatic updates (to catch the fix which is surely coming soon!)?

The problematic update in my case appears to be this one:

2015-07-28 14:08:18 upgrade linux-libc-dev:amd64 3.13.0-58.97 3.13.0-59.98

3 Answers 3

11

When you first boot up your machine you should see the grub boot menu. At the grub boot menu choose the older Kernel you want to boot to - Once you have chosen the Kernel you want to keep and you have booted into it

uname -r

will tell you what kernel you are currently running on (measure twice cut once)

dpkg -l | grep linux-image
dpkg -l | grep linux-headers

will tell you what kernels/headers are saved on your system - I will also delete the headers - though they dont take up too much space i still purge them, why have them if I am deleting the kernel?

Be advised that it is important to NOT delete the Kernel you are running i.e uname -r Deleting these kernel and header entries will make your system unusable

then just delete the ones you dont want:

sudo apt-get purge 

I will copy the output of dpkg -l | grep linux-image to a text document so that it is an un-messy process and i can clearly choose what i want to delete vs save

an example of what the full command will look like:

sudo apt-get purge linux-image-3.16.0-41-generic linux-image-3.16.0-41-lowlatency linux-image-extra-3.16.0-41-generic 

sudo apt-get purge linux-headers-3.16.0-41 linux-headers-3.16.0-41-generic linux-headers-3.16.0-41-lowlatency 

an example of what the output of dpkg -l | grep linux-headers will look like:

jason@casa-wesella:~$ dpkg -l | grep linux-headers
ii  linux-headers-3.16.0-41                     3.16.0-41.57~14.04.1                    all          Header files related to Linux kernel version 3.16.0
ii  linux-headers-3.16.0-41-generic             3.16.0-41.57~14.04.1                    i386         Linux kernel headers for version 3.16.0 on 32 bit x86 SMP
ii  linux-headers-3.16.0-41-lowlatency          3.16.0-41.57~14.04.1                    i386         Linux kernel headers for version 3.16.0 on 32 bit x86 SMP
ii  linux-headers-3.16.0-43                     3.16.0-43.58~14.04.1                    all          Header files related to Linux kernel version 3.16.0
ii  linux-headers-3.16.0-43-generic             3.16.0-43.58~14.04.1                    i386         Linux kernel headers for version 3.16.0 on 32 bit x86 SMP
ii  linux-headers-3.16.0-43-lowlatency          3.16.0-43.58~14.04.1                    i386         Linux kernel headers for version 3.16.0 on 32 bit x86 SMP
ii  linux-headers-generic-lts-utopic            3.16.0.43.34                            i386         Generic Linux kernel headers
ii  linux-headers-lowlatency-lts-utopic         3.16.0.43.34                            i386         lowlatency Linux kernel headers
3
  • In fact, the advice to use the grub menu is a huge help right away. I'm on a single-install (dedicated Ubuntu machine), and have never seen such a thing - enabled via these instructions. Chose the previous kernel version, and Wine apps working tickety-boo. :)
    – Dɑvïd
    Jul 29, 2015 at 9:32
  • 1
    your answer, in one command : sudo apt-get purge `dpkg --get-selections | grep -v "deinstall" | cut -f1 | grep 4.4.0-28 | tr '\n' ' '` (replace 4.4.0-28 with the version you want to remove)
    – knocte
    Jul 12, 2016 at 9:40
  • Not recommend for LTS, see here
    – 林果皞
    Feb 12, 2022 at 17:08
4

This answer isn't about rolling-back the kernel. But, FYI, the original problem that caused wine to malfunction seems to have been in the 3.13.0-59-generic kernel; and the new 3.13.0-61-generic version is now available.

I manually started Software Updater and it upgraded to 3.13.0-61-generic automatically; now my wine applications launch OK again.

1
  • Indeed -- I got the same update automatically this morning, and all is well. For me, needing to use Wine for work-related apps yesterday, using the grub menu to boot to an older kernel was what I needed to know. So no, not quite "roll back", but I wasn't sure what language to use at the time. Thanks for the input!
    – Dɑvïd
    Jul 30, 2015 at 7:44
-2

Just edit the grep config file to set a specific kernel as the default: Manually Setting a Specific Kernel as the Default

To manually set a specific kernel to boot, the user must edit the /etc/default/grub file as the superuser/root.

sudo nano /etc/default/grub

The line to edit is the GRUB_DEFAULT=0. After setting this line to the desired setting (see below), save the file and update the GRUB 2 configuration file using the following command:

sudo update-grub

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .