Comment forcer l'installation des mises à jour du noyau lors de l'utilisation d'apt-get upgrade?

35

Pour mettre à jour mon serveur, j'utilise apt-get upgrade.

Mais quand il y a des mises à jour du noyau, je dois toujours le faire apt-get install linux-....car je apt-get updatene les installe pas.

Y a-t-il un moyen que je puisse lui dire d'installer ceux-ci aussi? J'ai essayé -f mais ça ne marche pas.

Weboide
la source
1
apt-get upgradeinstalle de nouveaux noyaux pour moi s'il y en a un. Quelle version d'Ubuntu utilisez-vous? La seule chose que j'ai à vérifier en ce moment est 10.04 ...
Nicholas Knight
1
10.04 également, il me dit "Ces mises à jour sont gardées de la mise à jour". et il répertorie les mises à jour linux.
Weboide
vu dans xubuntu 13.04 safe-upgrade travaillé: D
Jim Ford

Réponses:

19

Ainsi, en ce qui concerne les commentaires: Désolé, vous aviez raison, j'étais complètement mal à lire ce que apt-get me dit (et je suis en utilisant la version anglaise :)!).

Après un peu de recherche, ce que vous voulez probablement utiliser est aptitude safe-upgrade, qui fait installer de nouveaux noyaux. Vraiment! J'ai vérifié deux fois! :)

De toute façon, vous devriez probablement préférer aptitudede manière générale apt-get, sauf si vous avez spécifiquement besoin de quelque chose apt-get.

nknight@nkubuntu1004:~$ sudo aptitude safe-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
Resolving dependencies...
Resolving dependencies...
The following NEW packages will be installed:
  linux-headers-2.6.32-24{a} linux-headers-2.6.32-24-generic{a} linux-image-2.6.32-24-generic{a} 
The following packages will be upgraded:
  apt apt-transport-https apt-utils base-files firefox firefox-branding firefox-gnome-support gdm google-chrome-stable 
  icedtea-6-jre-cacao linux-generic linux-headers-generic linux-image-generic linux-libc-dev openjdk-6-jre openjdk-6-jre-headless 
  openjdk-6-jre-lib software-center thunderbird ureadahead xulrunner-1.9.2 
21 packages upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 129MB of archives. After unpacking 188MB will be used.
Do you want to continue? [Y/n/?] 
Nicholas Knight
la source
1
Citez également la page de manuel: Il est parfois nécessaire de supprimer un paquet pour en mettre un autre à jour; cette commande n'est pas en mesure de mettre à niveau des packages dans de telles situations. Utilisez la commande full-upgrade pour mettre à niveau autant de packages que possible.
Weboide
4
aptitude sera supprimé de l'installation par défaut des versions futures de debian et d'ubuntu. Apt-get est à nouveau l'outil préféré pour l'installation de paquetages
Ralf
Oui, je n'ai pas trouvé d'aptitude chez 12.04. J'ai donc installé aptitude et lancé aptitude safe-upgrade, il fait également la même chose qu'apt-get upgrade. Aucune version du noyau n'est installée! (Mais je pouvais voir une nouvelle version du noyau disponible dans le gestionnaire de paquets synaptic (gui)).
user3215
19

vous cherchez

sudo apt-get dist-upgrade
bonjourandre
la source
4
L'utilisation de dist-upgrade peut ajouter ou supprimer d'autres packages, cela ne se limite pas au noyau. Cela peut être un problème sur un serveur si vous hébergez pour d'autres. Cependant, dans ce cas, vous voudrez probablement utiliser apt-pin de toute façon pour empêcher les mises à niveau involontaires.
jbowtie
2
dist-upgradeinstallera de nouveaux packages tout en essayant de résoudre une mise à niveau, nécessaire pour obtenir les mises à jour du noyau lorsque son ABI est modifiée (car le nom du package binaire est différent).
Kees Cook
1

si vous voulez installer, aptitudealors allez-y - mais il a ses dépendances et vous pouvez vous en tirer très bien sans elle - surtout si vous voulez que votre serveur soit plus léger.

Lorsque vous l'exécutez, sudo apt-get upgradeil vous informe sur les paquets qui n'ont pas été mis à niveau de la manière suivante:

The following packages have been kept back:
  linux-generic linux-headers-generic linux-image-generic

Donc, si vous êtes connecté en utilisant un terminal ssh, il suffit de copier / coller pour entrer la commande suivante:

$ sudo apt-get upgrade linux-generic linux-headers-generic linux-image-generic

qui met à jour uniquement les paquets qui ont été conservés. Utilisez uname -rpour afficher la version du noyau avant et après le redémarrage (nécessaire pour actualiser le noyau en cours d'exécution) et n'oubliez pas de l'exécuter purge-old-kernelsaprès le redémarrage.

Remigius Stalder
la source