What does apt-get --fix-missing do and when is it useful?
Solution 1:
Ok, in order:
- (1) -m ignore missing or fix missing packages (as opposed to -f broken packages). These options are synonyms for the same option. (Since to fix it ignores from here it takes its own weirdness :-) )
- (2-3) When you install/upgrade with
apt-get upgrade
or withapt-get install somepackage
, usually apt tries to update dependencies. This means that it may find that some packages need new or updated versions of existing packages, and so on in a cascade of dependencies. If some of those packages are missing or fail the integrity check, it seems to suspend this package, and wants you to go to handle the result following the handle method of the requiring package, if possible. Often it stops installing this package. - (4) With
apt-get update
you download what is needed to rebuild the list of dependencies.
After that you can tryapt-get install --fix-missing
again, in the hope that the updated list fixes the problem by itself.
This can be very useful at times, such as when you add a source for packages in your/etc/atp/sources.list
, or when the package index files have been updated.
Not all the programs you can use under Ubuntu came from the official Ubuntu repositories, and are updated with the same versions -- this is rare.
Moreover, there are many reasons why an installation can be abruptly interrupted (A kill signal, a power shortage, a failure of graphic driver...) In those situations, apt-get update
may not work, so you first need to fix the problem with apt-get install --fix-missing
or with some dpkg
commands.
You can see apt-get install --fix-missing
as a light and friendly version of commands like dpkg-reconfigure --all
or dpkg
.