linux-image-virtual packages vazio em 14.04 trusty?

3

Não consigo obter um kernel linux-virtual (para VMs) instalado no trusty. Os pacotes são instalados perfeitamente bem, mas eles simplesmente estão vazios, sem nada exceto o changelog e arquivos de copyright em usr / share / doc.

Qual é o procedimento adequado para instalar o kernel virtual no Ubuntu 14.04? Ou a coisa toda está obsoleta agora?

Obrigado

Para referência:

root@s2:/boot/grub# dpkg -L linux-virtual
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/linux-virtual
/usr/share/doc/linux-virtual/copyright
/usr/share/doc/linux-virtual/changelog.gz
root@s2:/boot/grub# dpkg -L linux-image-virtual
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/linux-image-virtual
/usr/share/doc/linux-image-virtual/copyright
/usr/share/doc/linux-image-virtual/changelog.gz
root@s2:/boot/grub# dpkg -L linux-image-extra-virtual
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/linux-image-extra-virtual
/usr/share/doc/linux-image-extra-virtual/copyright
/usr/share/doc/linux-image-extra-virtual/changelog.gz
root@s2:/boot/grub# dpkg -L linux-headers-virtual
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/linux-headers-virtual
/usr/share/doc/linux-headers-virtual/copyright
/usr/share/doc/linux-headers-virtual/changelog.gz
root@s2:/boot/grub# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.1 LTS
Release:        14.04
Codename:       trusty
    
por user309427 26.07.2014 / 18:01

1 resposta

8

Os pacotes linux-image-* que não contêm um número de versão do kernel em seu nome são metapacotes (veja também esta questão ). Eles trabalham fornecendo nenhum software diretamente, mas em vez disso, sempre declarando o último kernel estável fornecido para o seu lançamento do Ubuntu como uma dependência . ( Aqui estão mais algumas informações sobre quais dependências são em geral. )

Este faz com que novos kernels sejam instalados automaticamente quando estão disponíveis (e faz isso sem remover os kernels mais antigos, então você pode inicializar com um kernel mais antigo se algo estiver quebrado para você no mais novo).

Com tudo o que foi dito , os kernels linux-image-virtual são instalados são (atualmente) os mesmos que com linux-image-generic . Ou seja, em versões recentes como 14.04, o Ubuntu não fornece mais kernels separados para VMs. (Mas o linux-image-virtual ainda lhe dá um kernel e faz com que os kernels atualizados sejam instalados; você não precisa instalar nenhum outro metapacote para que isso aconteça.) O Ubuntu 12.04 tem pacotes de kernel virtuais separados.

ainda uma diferença entre linux-image-generic e linux-image-virtual , e isso é que linux-image-generic obtém alguns módulos extras do kernel que podem ser considerados não essenciais, dependendo não apenas do pacote linux-image-<VERSION>-generic mais recente, mas também do pacote linux-image-extra-<VERSION>-generic mais recente. Em contraste, linux-image-virtual depende de linux-image-<VERSION>-generic , mas não em linux-image-extra-<VERSION>-generic .

Isso cumpre (pelo menos parcialmente) o objetivo de ter "o kernel da máquina virtual" mais leve.

Considerando isso, você pode estar confuso com a forma como um linux-image-extra-virtual package ainda existe, mesmo no Ubuntu 14.04. Isso funciona simplesmente declarando o metaackage linux-image-generic como uma dependência. Quando linux-image-extra-virtual dependia dos pacotes de fornecimento de módulo linux-image-extra-<VERSION>-virtual reais (por exemplo, quando esses pacotes existiam, como em 12.04), ele instalou o que era então um kernel virtual separado, além dos módulos extras. Agora não há um kernel virtual separado, então tudo o que o linux-image-extra-virtual precisa fazer é instalar os módulos extras, o que é obtido garantindo que o linux-image-generic esteja instalado.

linux-image-extra-virtual é realmente um pacote transicional em versões recentes do Ubuntu; realmente só existe mais para que sistemas antigos (por exemplo, 12.04) com linux-image-extra-virtual tenham os pacotes necessários instalados após serem atualizados para sistemas mais novos (por exemplo, 14.04).

Fontes:

  • Links incorporados para entradas no banco de dados link .
  • Comentário 1 para o bug 1222278 Adam Conrad , explicando a diferença atual entre os meta-pacotes do kernel -generic e -virtual .

Há muita documentação que não foi atualizada para refletir que linux-image-virtual e linux-image-generic fornecem os mesmos kernels, em versões recentes do Ubuntu, e é por isso que forneci links para packages.ubuntu.com para mostrar a dependência relações explicitamente. (Há um pouco de informação nesta questão . Em algum lugar, há notas de lançamento do Ubuntu ou do Debian que explicitamente abordam isso mais detalhadamente, eu acho.

  

Ou a coisa toda está obsoleta agora?

Isso pode ser considerado uma descrição precisa do que aconteceu. O ponto principal, porém, é que isso não está relacionado a não haver arquivos de kernel reais fornecidos diretamente por linux-image-virtual ; o metaackage linux-image-generic também não os fornece diretamente.

    
por Eliah Kagan 26.07.2014 / 19:09