Обновление ядра вручную: система не загружает новое ядро

0

В ответ на Dirty COW я установил ядро ​​4.4.0-45, как описано в ответе на этот вопрос.

Выход из dpkg -l | grep '4\.4\.0-45'

ii  linux-headers-4.4.0-45                                      4.4.0-45.66                                          all          Header files related to Linux kernel version 4.4.0
ii  linux-headers-4.4.0-45-generic                              4.4.0-45.66                                          amd64        Linux kernel headers for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-4.4.0-45-generic                                4.4.0-45.66                                          amd64        Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii  linux-image-extra-4.4.0-45-generic                          4.4.0-45.66                                          amd64        Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii  linux-libc-dev:amd64                                        4.4.0-45.66                                          amd64        Linux Kernel Headers for development

четко показывает, что он установлен и update-grubобнаруживает его

Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.4.0-45-generic
Found initrd image: /boot/initrd.img-4.4.0-45-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
done

но даже после перезагрузки машина уже в который раз uname -rдает мне

4.2.0-38-generic

Я хочу знать, какой шаг я пропустил, чтобы система не загружала новое ядро.

FallenWarrior
источник
1
Он указан в конфигурации GRUB? Кроме того, что находится в меню GRUB при запуске?
10
@ l0b0 Спасибо. По какой-то причине старое ядро ​​оставалось по умолчанию, и поскольку это машина, в основном управляемая по SSH, я не заметил. Но, тем не менее, даже если я перезагружаюсь GRUB_DEFAULT='gnulinux-advanced-f0724a95-d885-4cec-b74c-635d61f32c73>gnulinux-4.4.0-45-generic-advanced-f0724a95-d885-4cec-b74c-635d61f32c73'(имя, полученное из конфигурационного файла grub, оно все равно загружается в старое ядро.
FallenWarrior

Ответы:

0

Вам не нужно устанавливать новую версию ядра, чтобы исправить уязвимость «грязной коровы», просто включите службу Canonical Livepatch на вашем Ubuntu

Исправление ядра в режиме реального времени позволяет исправлять критические проблемы безопасности вашего ядра во время выполнения без перезагрузки. Это лучший способ обеспечить безопасность машин на уровне ядра, в то же время гарантируя время безотказной работы, особенно для хостов-контейнеров, где на одной машине могут работать тысячи различных рабочих нагрузок.

(1) Перейдите на https://ubuntu.com/livepatch и получите свой токен livepatch, например: d3b07384d213edec49eaa6238ad5ff00

(2) Установите оснастку livepatch, например: $ sudo snap install canonical-livepatch

(3) Включите свою учетную запись с токеном из шага 1

$ sudo canonical-livepatch enable d3b07384d113edec49eaa6238ad5ff00

Вот и все. Вы и работает! Вы можете проверить свой статус в любое время с помощью:

$ canonical-livepatch status kernel: 4.4.0-38.57-generic полностью исправленный: true версия: "12.2"

Теперь ваше ядро ​​будет надежно исправлено, и вы сможете перезагрузиться, когда вам будет удобно.

Или запустив следующую команду:

sudo apt-get update && sudo apt-get dist-upgrade
GAD3R
источник
Когда я пытаюсь включить это, происходит что-то странное. Независимо от того, использую я обычный sudoили вход в систему как root с sudo -iцелью получения привилегий, команда enable завершается неудачно с «Отказано в доступе» в некоторых файлах.
FallenWarrior
В качестве пользователя root или разрешите sudoвыполнять команды root
GAD3R
~# canonical-livepatch enable **** ; cannot bind-mount the mount namespace file /proc/3070/ns/mnt -> canonical-livepatch.mnt. errmsg: Permission denied support process for mount namespace capture exited abnormallyЭто вывод, который я получаю, когда запускаю его как root. Извините за плохое форматирование, я сейчас на телефоне.
FallenWarrior
посмотрите здесь insights.ubuntu.com/2016/10/31/…
GAD3R
-1

Лучше, если вы загрузитесь из старого ядра И удалите все новые файлы ядра из /boot Затем, update-grub после этого вы можете установить старое ядро ​​по умолчанию. Тогда sudo aptitude safe-upgrade Надеюсь, что это поможет. Если нет, загрузите восстановление и исправьте некоторые проблемы, которые мне нравятся, но это будет рискованно для нового человека.

amzker pro hacker
источник
Добро пожаловать в Супер пользователя! Можете ли вы отредактировать и объяснить, почему это предложение работает, а не то, что сделал OP (как они действительно работали update-grub)?
Бертиеб