web-dev-qa-db-fra.com

Ubuntu 14.04 dans un conteneur OpenVZ: apt essayant de mettre à jour le noyau

Comment empêcher Ubuntu de tenter de mettre à niveau le noyau?

L'architecture OpenVZ sous-jacente de mon hôte fournit ce noyau:

$ uname -r
2.6.32-042stab116.2

Et ma compréhension est que cela est hors de mon contrôle. Pourtant, chaque fois que je le fais:

$ Sudo aptitude update && Sudo aptitude safe-upgrade

Je vois que Ubuntu essaie (et échoue) de se mettre à jour. J'ai maintenant plusieurs paquets partiellement installés:

$ dpkg -l |grep linux

ii  libselinux1:i386                     2.2.2-1ubuntu0.1                     i386         SELinux runtime shared libraries
ii  linux-firmware                       1.127.22                             all          Firmware for Linux kernel drivers
iU  linux-generic                        3.13.0.101.109                       i386         Complete Generic Linux kernel and headers
ii  linux-headers-3.13.0-100             3.13.0-100.147                       all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-100-generic     3.13.0-100.147                       i386         Linux kernel headers for version 3.13.0 on 32 bit x86 SMP
ii  linux-headers-3.13.0-101             3.13.0-101.148                       all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-101-generic     3.13.0-101.148                       i386         Linux kernel headers for version 3.13.0 on 32 bit x86 SMP
ii  linux-headers-3.13.0-91              3.13.0-91.138                        all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-91-generic      3.13.0-91.138                        i386         Linux kernel headers for version 3.13.0 on 32 bit x86 SMP
ii  linux-headers-3.13.0-92              3.13.0-92.139                        all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-92-generic      3.13.0-92.139                        i386         Linux kernel headers for version 3.13.0 on 32 bit x86 SMP
ii  linux-headers-3.13.0-93              3.13.0-93.140                        all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-93-generic      3.13.0-93.140                        i386         Linux kernel headers for version 3.13.0 on 32 bit x86 SMP
ii  linux-headers-3.13.0-96              3.13.0-96.143                        all          Header files related to Linux kernel version 3.13.0
ii  linux-headers-3.13.0-96-generic      3.13.0-96.143                        i386         Linux kernel headers for version 3.13.0 on 32 bit x86 SMP
ii  linux-headers-generic                3.13.0.101.109                       i386         Generic Linux kernel headers
iF  linux-image-3.13.0-100-generic       3.13.0-100.147                       i386         Linux kernel image for version 3.13.0 on 32 bit x86 SMP
iF  linux-image-3.13.0-101-generic       3.13.0-101.148                       i386         Linux kernel image for version 3.13.0 on 32 bit x86 SMP
iF  linux-image-3.13.0-92-generic        3.13.0-92.139                        i386         Linux kernel image for version 3.13.0 on 32 bit x86 SMP
iF  linux-image-3.13.0-93-generic        3.13.0-93.140                        i386         Linux kernel image for version 3.13.0 on 32 bit x86 SMP
iF  linux-image-3.13.0-96-generic        3.13.0-96.143                        i386         Linux kernel image for version 3.13.0 on 32 bit x86 SMP
iU  linux-image-extra-3.13.0-100-generic 3.13.0-100.147                       i386         Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP
iU  linux-image-extra-3.13.0-101-generic 3.13.0-101.148                       i386         Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP
iU  linux-image-extra-3.13.0-92-generic  3.13.0-92.139                        i386         Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP
iU  linux-image-extra-3.13.0-93-generic  3.13.0-93.140                        i386         Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP
iU  linux-image-extra-3.13.0-96-generic  3.13.0-96.143                        i386         Linux kernel extra modules for version 3.13.0 on 32 bit x86 SMP
iU  linux-image-generic                  3.13.0.101.109                       i386         Generic Linux kernel image
ii  linux-libc-dev:i386                  3.13.0-101.148                       i386         Linux Kernel Headers for development
ii  syslinux                             3:4.05+dfsg-6+deb8u1                 i386         collection of boot loaders
ii  syslinux-common                      3:4.05+dfsg-6+deb8u1                 all          collection of boot loaders (common files)
ii  util-linux                           2.20.1-5.1ubuntu20.7                 i386         Miscellaneous system utilities

Pour être complet, j'utilise un conteneur OpenVZ très similaire (même hébergement) qui ne ne montre pas le même problème:

$ uname -r
2.6.32-042stab116.2

$ dpkg -l |grep linux
ii  libselinux1:i386                  2.2.2-1ubuntu0.1                     i386         SELinux runtime shared libraries
ii  libv4l-0:i386                     1.0.1-1                              i386         Collection of video4linux support libraries
ii  libv4lconvert0:i386               1.0.1-1                              i386         Video4linux frame format conversion library
ii  linux-libc-dev:i386               3.13.0-101.148                       i386         Linux Kernel Headers for development
ii  syslinux                          3:4.05+dfsg-6+deb8u1                 i386         collection of boot loaders
ii  syslinux-common                   3:4.05+dfsg-6+deb8u1                 all          collection of boot loaders (common files)
ii  util-linux                        2.20.1-5.1ubuntu20.7                 i386         Miscellaneous system utilities

Comme vous pouvez le constater, le noyau réel n’est pas répertorié par dpkg sur l’une ou l’autre des machines, mais seule la première a importé ces nouveaux noyaux indésirables. Les mises à niveau sur ce dernier fonctionnent sans problème.

UPDATE

Afin de supprimer les packages à moitié installés, voir cette question .

5
Giuseppe
  • La réponse de fkraiem a déjà expliqué pourquoi le noyau en cours d'exécution ne peut pas être mis à jour à partir du conteneur invité.

  • Pour empêcher la mise à jour du noyau, vous devez désinstaller ses packages méta .

    Sudo apt-get purge linux-generic linux-image-generic linux-headers-generic
    
2
user.dz

Certains packages d'images du noyau sont installés (les packages commençant par linux-image]) et, comme tous les autres packages, le gestionnaire de packages souhaite les mettre à niveau lorsqu'une version plus récente est disponible dans les référentiels.

Cependant, dans votre cas, le noyau est fourni par l'hôte et les packages du noyau installés sont complètement ignorés. Dans ce cas, il est naturel de les désinstaller. le gestionnaire de paquets peut se plaindre de ne pas installer de paquet du noyau car ce n’est normalement pas souhaitable, mais dans votre cas, cela va parfaitement.

Alternativement, les garder installés et mis à niveau ne fera pas de mal (autre que de prendre de l'espace disque) car ils ne sont de toute façon pas utilisés.

2
fkraiem