У меня есть старая система, где все работает отлично, и новая система, где она не работает. Чтобы быть конкретным: X не запускается.
Я проследил ошибку до того, что альтернативы обновления по какой-то причине находятся в ручном режиме для групп glx и nvidia.
Это из работающей системы:
update-alternatives --display glx
glx - auto mode
link currently points to /usr/lib/nvidia
/usr/lib/mesa-diverted - priority 5
slave glx--libGL.so.1-i386-linux-gnu: /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1
/usr/lib/nvidia - priority 100
slave glx--libGL.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libGL.so.1
slave glx--libXvMCNVIDIA.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA.so.1
slave glx--libXvMCNVIDIA_dynamic.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA_dynamic.so.1
slave glx--libnvidia-cfg.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libnvidia-cfg.so.1
slave glx--linux-libglx.so: /usr/lib/nvidia/libglx.so
slave glx--nvidia-bug-report.sh: /usr/lib/nvidia/nvidia-bug-report.sh
slave glx--nvidia_drv.so: /usr/lib/nvidia/nvidia_drv.so
Current 'best' version is '/usr/lib/nvidia'.
И это из системы, которая имеет ошибку:
update-alternatives --display glx
glx - manual mode
link currently points to /usr/lib/mesa-diverted
/usr/lib/mesa-diverted - priority 5
slave glx--libGL.so.1-i386-linux-gnu: /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1
/usr/lib/nvidia - priority 100
slave glx--libGL.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libGL.so.1
slave glx--libXvMCNVIDIA.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA.so.1
slave glx--libXvMCNVIDIA_dynamic.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libXvMCNVIDIA_dynamic.so.1
slave glx--libnvidia-cfg.so.1-i386-linux-gnu: /usr/lib/i386-linux-gnu/nvidia/libnvidia-cfg.so.1
slave glx--linux-libglx.so: /usr/lib/nvidia/libglx.so
slave glx--nvidia-bug-report.sh: /usr/lib/nvidia/nvidia-bug-report.sh
slave glx--nvidia_drv.so: /usr/lib/nvidia/nvidia_drv.so
Current 'best' version is '/usr/lib/nvidia'.
Как видите, по какой-то причине группа glx установлена на ручную. Это также относится и к группе nvidia. Все приоритеты установлены правильно.
Теперь я знаю ручное решение (которое будет правильно запускать update-alternatives --config glx ), поскольку моя система автоматически устанавливается и после этого должна работать идеально (просто посмотрите старую систему). Поэтому я хочу понять причину.
Вы должны знать, что эта проблема уже присутствует сразу после новой установки. Никакого ручного вмешательства не произошло. Я пытаюсь понять, почему и когда происходит этот ручной режим.
Мануал альтернативных обновлений подразумевает, что только --set или --config переключает группу в ручной режим. Однако я не могу найти ничего, что выполняет любую из этих команд.
Я полагаю, что единственная разница между этими двумя системами состоит в том, что более новые версии используют более свежие пакеты от Debian Wheezy. Я уже сравнил все сценарии сопровождающего постинста между старой и новой версиями, и в соответствующих пакетах ничего не изменилось.
Я не знаю много об альтернативах обновления, поэтому я надеюсь, что кто-то может мне помочь.