I'm trying to update Ubuntu from 10.04 to 12.04 on an Acer Aspire laptop PC. Unfortunately I started the process another time, and was forced to abort... kindah wish I didn't do that now...
Now Update Manager says I need to run a partial upgrade because a previous upgrade didn't complete. When I run this, it tells me the system contains broken packages and to try using apt-get
or synaptic before proceeding.
I ran sudo apt-get update
and it works fine, but sudo apt-get upgrade
returns:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
libc-dev-bin: Depends: libc6 (< 2.12) but 2.15-0ubuntu10.3 is installed
libc6-dev: Depends: libc6 (= 2.11.1-0ubuntu7.10) but 2.15-0ubuntu10.3 is installed
libgssapi-krb5-2: Depends: libkrb5-3 (= 1.10+dfsg~beta1-2ubuntu0.3) but 1.8.1+dfsg-2ubuntu0.10 is installed
libkrb5-3: Depends: libkrb5support0 (= 1.8.1+dfsg-2ubuntu0.10) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
libnih1: Depends: libc6 (< 2.12) but 2.15-0ubuntu10.3 is installed
python-louis: Depends: liblouis0 (>= 1.7.0-2) but it is not installable
E: Unmet dependencies. Try using -f.
So I tried sudo apt-get -f install
and this is what it told me:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... failed.
The following packages have unmet dependencies:
libc-dev-bin: Depends: libc6 (< 2.12) but 2.15-0ubuntu10.3 is installed
libc6-dev: Depends: libc6 (= 2.11.1-0ubuntu7.10) but 2.15-0ubuntu10.3 is installed
libgssapi-krb5-2: Depends: libkrb5-3 (= 1.10+dfsg~beta1-2ubuntu0.3) but 1.8.1+dfsg-2ubuntu0.10 is installed
libkrb5-3: Depends: libkrb5support0 (= 1.8.1+dfsg-2ubuntu0.10) but 1.10+dfsg~beta1-2ubuntu0.3 is installed
libnih1: Depends: libc6 (< 2.12) but 2.15-0ubuntu10.3 is installed
python-louis: Depends: liblouis0 (>= 1.7.0-2) but it is not installable
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
E: Unable to correct dependencies
Which brings me to the question: what are held packages?
Anyway, I tried synaptic package manager next.
First thing, it said
You have 7 broken packages on your system!
Use the "Broken" filter to locate them.
These are the packages that show up (just six):
libc-dev-bin
libc6-dev
libcssapi-krb5-2
libkrb5-3
libnih1
python-louis
I marked those for removal, but when I try to apply it tells me 3 ESSENTIAL packages are marked for removal (none of which I marked myself, btw):
e2fsprogs
hostname
util-linux
So I unmarked those and tried to apply, but:
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages. *[several times!]*
E: Unable to correct dependencies
E: Unable to lock the download directory
I also tried using sudo do-release-upgrade
, but it returned this:
Investigating network-manager
Package network-manager has broken Depends on libnm-glib4
Considering libnm-glib4 0 as a solution to network-manager 3
Holding Back network-manager rather than change libnm-glib4
Investigating gnome-games
Package gnome-games has broken Depends on glchess
Considering glchess 1 as a solution to gnome-games 0
Holding Back gnome-games rather than change glchess
Done
Broken packages
Your system contains broken packages that couldn't be fixed with this
software. Please fix them first using synaptic or apt-get before
proceeding.
Preparing the upgrade failed
Preparing the system for the upgrade failed so a bug reporting
process is being started.
=== Command terminated with exit status 1 (Mon Feb 25 18:07:53 2013) ===
It might also be worth mentioning I initially tried using an ISO-imaged disk, but that didn't give me the usual set of choices (like 'Try Ubuntu 12.04', 'Upgrade to Ubuntu 12.04' etc.). Instead, the screen kept changing 'shades' of black, producing nothing... I know the disk works because I've used once before.
I'm not much of Linux expert - is there something I'm overlooking? How can I perform this upgrade? I'm even willing o clear the computer's HDD if necessary.
Thanks al lot!
Held packages are packages that the Ubuntu team has specifically set to not upgrade. They usually do this for compatibility and/or stability reasons.
As for your broken packages issue, have you tried going through the GUI? You might be able to do what's known as a partial upgrade, which may fix the broken packages. You can try this by going to "System Updates" and letting it scan and update. You may need to restart your computer for everything to take effect.
Another option is to go into "Software Sources", make sure all of the Ubuntu repositories are selected (universe, multiverse, restricted), and then run
sudo apt-get update
. Including these repositories makes more packages available, which may include updates to the packages in question.You may also be able to repair the install just like how you tried with the boot CD. If you have another computer, verify that the disc does, in fact, still work by putting it into the other computer (you don't have to install anything, just see if it takes you to the setup screens that you couldn't reach on this computer). If it doesn't, just burn another CD, or create a bootable USB if you have one, and try again.
If you're willing to risk having to do a clean install, you can try to reinstall the packages (the ones that marked for uninstall that you didn't mark are packages that depend on the ones you did mark). (The usual method of fixing broken packages is to uninstall and reinstall the offending package.) One of the nice things about Linux is that what runs in memory often stays in memory until you tell it to quit or reload. This means that you might not bring your system down during the process, as long as you don't restart before installing everything again.