Hoje fiz o upgrade de 14.10 VM para 15.04. Como é uma máquina virtual (via VirtualBox), eu precisava instalar adições de convidado. No entanto, a instalação falha dizendo (em /var/log/vboxadd-install.log
):
Erro! Seus cabeçalhos de kernel para o kernel 3.16.0-31-generic não podem ser encontrados.
Então, tentei instalá-lo da maneira habitual e consegui:
O pacote linux-headers-3.16.0-31-generic não está disponível, mas é referido por outro pacote. Isso pode significar que o pacote está faltando, foi obsoleto ou só está disponível em outra fonte [.]
Tendo instalado linux-headers-generic
, que deve fornecer os cabeçalhos corretos, fiquei confuso. Esse é o tipo de erro que esperaria se 3.16.0-31
estivesse desatualizado. Mas . . . de fato dpkg -l | grep generic
produz:
...
ii linux-headers-3.19.0-17-genéricos ...
...
Um ha! Então, parece que as adições de convidados estão tentando usar um kernel desatualizado. Talvez eles usem uname
. Então eu tentei uname -r
e consegui:
3.16.0-31-generic
Meu palpite é que as adições dos convidados estão usando uname
para obter a versão desejada do cabeçalho do kernel, mas uname
está fornecendo o valor incorreto por qualquer motivo. Pergunta: Se minha análise estiver correta, como faço para corrigir isso? Se não, qual é o problema?
EDIT: Depois de olhar ao redor, parece que isso significa que o kernel em execução é realmente 3.16.0-31
, enquanto 3.19.0-17
é meramente instalado . Eu sudo update-grub
d, confirmei que o kernel 3.19 é o 0º elemento de /boot/grub/menu.lst
e reiniciei, mas não parece mudar nada.
EDIT: Enquanto /boot/grub/menu.lst
está correto (a entrada 0 é 3,19), ao reiniciar e segurando Shift para obter o menu do manual, eu não vejo o 3.19 kernel, e a entrada principal é o kernel 3.16.