yum instala o kernel-devel diferente da versão do meu kernel

27

Eu estou tentando instalar o VMWare Player no Fedora 19. Estou correndo para o problema que vários usuários tiveram onde o VMware Player não consegue encontrar os cabeçalhos do kernel. Eu instalei os pacotes kernel-headers e kernel-devel através de yum e o arquivo que aparece em /usr/src/kernels é:

3.12.8-200.fc19.x86_64

No entanto, quando eu faço uname -r minha versão do kernel do Fedora é:

3.9.5-301.fc19.x86_64

que é uma versão diferente. Isso parece significar que, quando aponto o VMware player no caminho dos kernels, recebo este erro:

C header files matching your running kernel were not found.  
Refer to your distribution's documentation for installation instructions.

Como posso instalar o Kernel correto e onde devo estar apontando o VMware se não for /usr/src/kernels/<my-kernel> ?

    
por Fantastic Mr Fox 24.01.2014 / 00:37

4 respostas

28

Você pode instalar os arquivos de cabeçalho de kernel corretos assim:

$ sudo yum install "kernel-devel-uname-r == $(uname -r)"

Exemplo

Este comando sempre instalará a versão correta.

$ sudo yum install "kernel-devel-uname-r == $(uname -r)"
Loaded plugins: auto-update-debuginfo, changelog, langpacks, refresh-packagekit
No package kernel-devel-uname-r == 3.12.6-200.fc19.x86_64 available.
Error: Nothing to do

Ou você pode pesquisá-los assim:

$ yum search "kernel-headers-uname-r == $(uname -r)" --disableexcludes=all
Loaded plugins: auto-update-debuginfo, changelog, langpacks, refresh-packagekit
Warning: No matches found for: kernel-headers-uname-r == 3.12.6-200.fc19.x86_64
No matches found

No entanto, também observei esse problema onde versões específicas de cabeçalhos não estão presentes nos repositórios. Você pode ter que entrar no Koji para encontrar uma versão específica de uma compilação.

Essa página inclui todos os ativos para essa versão específica do Kernel.

    
por 24.01.2014 / 02:28
5

Sincronização de distribuição

Seu problema pode ser "sincronização de distribuição". A execução desse comando resolveu meu problema.

yum distro-sync

Synchronizes the installed package set with the latest packages available, this is done by either obsoleting, upgrading or downgrading as appropriate. (http://man7.org/linux/man-pages/man8/yum.8.html)

    
por 20.07.2016 / 06:58
4

Você pode instalar uma versão específica de um pacote especificando a versão junto com o nome do pacote com yum . Por exemplo, para instalar os arquivos de desenvolvimento do kernel para o kernel específico que você está executando, digite

yum install kernel-devel-3.9.5-301.fc19

Você pode fazer um comando semelhante para obter o pacote kernel-headers correto.

    
por 24.01.2014 / 02:58
-1

Acontece algumas vezes também comigo, instalando o VMBoxAdditions depois de uma atualização do sistema.

Eu tenho que remover kernel-devs:

yum remove kernel-devel

e, em seguida, reinstale-o:

yum install kernel-devel

E então magicamente funciona.

    
por 23.10.2015 / 12:47