Как заставить установку обновлений ядра при использовании apt-get upgrade?


35

Для обновления моего сервера я использую apt-get upgrade.

Но когда есть обновления ядра, я всегда должен делать, apt-get install linux-....потому apt-get updateчто не устанавливает их.

Есть ли способ, которым я могу сказать, чтобы установить их тоже? Я пытался -f, но это не работает.


1
apt-get upgradeустанавливает новые ядра для меня, если таковые имеются. Какую версию Ubuntu вы используете? Единственное, что мне нужно сейчас проверить - это 10.04 ...
Николас Найт,

1
10.04 также сообщается мне: «Эти обновления не обновляются» (перевод с французского). и в нем перечислены обновления Linux.
Weboide

заметил это в xubuntu 13.04 безопасное обновление работало: D
Джим Форд

Ответы:


19

Итак, что касается комментариев: извините, вы были правы, я совершенно не понял, что мне говорил apt-get (и я использую английскую версию! :)).

После небольшого исследования, что вы , вероятно , хотите использовать aptitude safe-upgrade, что делает установку новых ядер. В самом деле! Я дважды проверил! :)

В любом случае, вы должны предпочесть aptitudeвообще apt-get, если вам не нужно что-то особенное 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/?] 

1
Также процитируйте страницу руководства: иногда необходимо удалить один пакет, чтобы обновить другой; эта команда не может обновить пакеты в таких ситуациях. Используйте команду full-upgrade, чтобы обновить как можно больше пакетов.
Weboide

4
aptitude будет удалена из установки по умолчанию в будущих версиях Debian и Ubuntu. Apt-get снова является предпочтительным инструментом для установки пакетов
Ralf

Да, я не нашел способностей в 12.04. Итак, я установил aptitude и запустил aptitude safe-upgrade, он также делает то же самое, что и обновление apt-get. Версия ядра не установлена! (Но я видел новую версию ядра, доступную в менеджере пакетов synaptic (gui)).
user3215

19

ты ищешь

sudo apt-get dist-upgrade

4
Используя dist-upgrade можно добавлять или удалять другие пакеты, это не ограничивается только ядром. Это может быть проблемой на сервере, если вы размещаете для других. Однако в таком случае вы, вероятно, все равно захотите использовать apt-pin, чтобы предотвратить непреднамеренное обновление.
Jbowtie

2
dist-upgradeустановит новые пакеты при попытке выполнить обновление, которое необходимо для получения обновлений ядра при изменении ABI ядра (поскольку оно разрешается с другим именем двоичного пакета).
Кис Кук

1

если вы хотите установить, aptitudeтогда, пожалуйста, продолжайте - но у него есть свои зависимости, и imho, вы можете обойтись без него - особенно, если вы хотите сохранить установку вашего сервера (эр).

При запуске sudo apt-get upgradeон сообщает о пакетах, которые не были обновлены следующим образом:

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

Так что, если вы подключены с помощью ssh-терминала, просто введите команду copy + paste, чтобы ввести следующую команду:

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

который обновляет только пакеты, которые были сохранены обратно. Используйте uname -rдля отображения версии ядра до и после перезагрузки (необходимо обновить работающее ядро) и не забудьте запустить purge-old-kernelsпосле перезагрузки.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.