Difference between auto mode and manual mode in update-alternatives
In a nutshell, update-alternatives
:
in Auto Mode, will select the generic name of the program automatically based on the Priority value of the alternatives; The one with the highest priority gets set as the generic name.
in Manual Mode, will set the generic name as the user selected alternative irrespective of the Priority value of the alternatives, hence the name "manual".
Check this:
% sudo update-alternatives --config editor
There are 5 choices for the alternative editor (providing /usr/bin/editor).
Selection Path Priority Status
------------------------------------------------------------
0 /bin/nano 40 auto mode
1 /bin/ed -100 manual mode
2 /bin/nano 40 manual mode
* 3 /usr/bin/emacs24 0 manual mode
4 /usr/bin/vim.basic 30 manual mode
5 /usr/bin/vim.tiny 10 manual mode
Note that, /bin/nano
is both available in auto and manual mode.
If the link group were set in auto mode then the alternative with the highest priority i.e. /bin/nano
(priority 40) would be selected as the generic name i.e. /usr/bin/editor
. This is the default until the user introduces any change to the link group.
On the other hand, in the manual mode, you can select any alternative as the generic name e.g. in the example, i have /usr/bin/emacs24
set as the generic /usr/bin/editor
. You can select any one you like by using the Selection number on the left of the option.
Now I can revert back from the manual mode to auto mode by selecting 0
from the above or by:
sudo update-alternatives --auto editor
In "auto mode", update-alternatives
will always select the alternative with the highest priority. If a new or upgraded package is installed which has a higher priority than any other alternative, it will be chosen as the auto alternative.
In "manual mode", update-alternatives
will never override the sysadmin's choice, no matter what the relative priorities of the alternatives. The operator has made a choice and the system is going to stick with it until and unless the operator makes a different choice (including choosing to go back to "auto mode").
"auto mode" is the default mode until the operator makes a manual choice.
Each set of alternatives (e.g. editor
, awk
, vi
, pager
, etc) has its own individual mode setting...in other words, making a manual choice for editor
wont affect the mode of the vi
or pager
alternatives.