Devo atualizar para os kernels "principais"?

61

Versões "mainline" mais recentes do kernel estão disponíveis na equipe do kernel do Ubuntu , por exemplo, 3.4 e 3.5, enquanto o Ubuntu 12.04 está no 3.2.

  • Quais são os kernels da linha principal?
  • Eles são melhores que o meu kernel existente?
  • Quais são os prós e os contras da atualização para um kernel da linha principal?
  • Poderei facilmente voltar?
ish
fonte

Respostas:

66

Atualizar para um kernel da linha principal geralmente não é uma boa ideia

A maioria das informações básicas nesta resposta é do wiki Mainline Builds

1. Eles são fornecidos apenas para teste e não são suportados

  • Os kernels da linha principal são criados a partir das fontes de kernel Linux "mainline" não modificadas mais recentes.
  • A equipe do kernel do Ubuntu fornece esses recursos apenas para fins de teste e depuração, para verificar se os problemas foram corrigidos "upstream", ou seja, pelos desenvolvedores do kernel do Linux .
  • Portanto, eles não são suportados e devem ser usados por seu próprio risco; você pode relatar possíveis erros ao kernel.org via kernel-oops ou, se quiser uma solução mais rápida, tente postar na lista de discussão do kernel do Linux

2. Eles frequentemente quebram drivers, especialmente Nvidia / AMD e wireless (Broadcom)

  • Os kernels da linha principal não incluem drivers ou patches fornecidos pelo Ubuntu
  • Isso significa que não são fornecidos drivers binários para gráficos, conexão sem fio etc.
  • Se você tentar instalar drivers binários baixados diretamente dos fabricantes, é muito provável que eles não funcionem, pois os cabeçalhos da linha principal podem ser incompatíveis.
    • Isso será especialmente verdadeiro para versões não LTS após 12.04 (12.10, 13.04, ...), porque os kernels da linha principal são criados usando a última cadeia de ferramentas LTS (compiladores, etc.), que geralmente é mais antiga que a cadeia de ferramentas da última versão. versão não LTS.

3. Você deve instalá-los somente se acreditar que eles podem corrigir um problema crítico que você está tendo com o kernel atual.

  • Os kernels mais recentes às vezes contêm correções para um problema de hardware ou sistema de arquivos que você possa ter. Por exemplo, os gráficos internos HD4000 nos CPUs Intel Ivy Bridge mais recentes ocasionalmente congelavam, um bug corrigido nos kernels 3.3.6 e mais recentes.
  • Você pode tentar instalar um kernel da linha principal nessas circunstâncias e ver se isso ajuda no seu problema.
  • Caso isso aconteça, considere atualizar para o kernel Ubuntu + 1 mais recente, que possui drivers binários disponíveis para ele.

4. Se você instalar uma linha principal ou outro kernel mais recente, ainda poderá optar por usar seu kernel antigo (estável) selecionando-o no momento da inicialização:

  • Mantenha Shiftpressionado após ligar o computador.
  • Você verá o menu Grub como mostrado abaixo. Use a seta para baixo para acessar "Versões anteriores do Linux" e pressioneEnter

    insira a descrição da imagem aqui

  • Selecione a opção que tem uma versão do xxx-genérico , não uma que tem xxx- YYYYYY -generic e pressione Enter. Geralmente, é a primeira opção, a menos que você tenha instalado vários kernels principais / personalizados.

    insira a descrição da imagem aqui

ish
fonte
11
Embora isso seja verdade, o kernel 3.4 oferece suporte aprimorado ao hardware se você estiver executando CPUs e GPUs recentes, conforme observado em kernelnewbies.org/Linux_3.4 . Algumas pessoas tiveram problemas com o kernel padrão no Ubuntu 12.04 e a atualização resolveu muitos problemas: veja youtube.com/watch?v=traegZveTKo . (O título do vídeo menciona o kernel 3.5, mas é sobre 3.4.) Concordo, no entanto, não há necessidade de fazer uma atualização do kernel a partir da linha principal, a menos que você tenha um motivo premente real.
2
Este é um tópico antigo, mas o que você quis dizer quando disse que o OP deveria considerar o uso de um kernel Ubuntu + 1? Onde posso encontrá-los? Estou em uma situação semelhante agora. Eu tenho um hardware muito novo que parece ser melhor suportado pelo kernel da linha principal 3.12.
Ruez #
11

Em vez da linha principal, você deve considerar a pilha de ativação do LTS

https://wiki.ubuntu.com/Kernel/LTSEnablementStack

Onde, uma pilha mais recente de kernel / gráficos é suportada oficialmente, apenas para versões do LTS Ubuntu.

Nesse caso, o Precise 12.04.5 possui o kernel do Trusty (3.13)

kevinf
fonte
Esta rota parece mais lógica. O kernel HWE Xenial é melhor que o kernel Trusty? Quais são os prós e os contras de atualizar meu kernel dessa maneira?
verdade da bus
O @SeekTruth depende do motivo pelo qual você está atualizando seu kernel. Não é que o kernel hospitaleiro é melhor então o kernel Trusty, seu justo o que versões puxaram de kernel.org
kevinf
2

Se você souber de uma correção ou melhoria específica na maneira como o kernel mais recente lida com seu hardware, eu digo que faça isso.

Eu não teria feito o upgrade para um kernel da linha principal devido à falta de suporte, exceto pelo fato de estar tendo problemas com a emulação de jogos N64 rodando muito lentamente, com muitos bugs. Depois de tentar todas as configurações que pude encontrar para o emulador e o xorg, li Aqui está o porquê dos gráficos Radeon serem mais rápidos no Linux 3.12 . Isso foi o suficiente para me motivar a testá-lo, e os resultados na aparência e no desempenho foram surpreendentes, sem novos problemas ainda.

Uma coisa a observar é se você possui módulos externos (também conhecidos como fora da árvore) instalados (consulte Identificar módulos fora da árvore para ter uma idéia de onde eles estão). Se você precisar desses módulos, considere se eles serão compilados com a nova versão do kernel. Faça algumas pesquisas e teste-as você mesmo na nova versão do kernel. No pior cenário, você pode inicializar na versão anterior do kernel e desinstalar a nova.

É recomendável remover módulos externos ou proprietários antes de tentar atualizar para o kernel da linha principal. Eu tive que remover o virtualbox para evitar o "Erro! Status de retorno incorreto para a construção do módulo" durante a instalação do kernel.

iyrin
fonte