How Do I update my kernel to the latest one?
I want to update my Kernel to the latest stable version which is v5.16.1 I followed a guide which showed how to install kernel 5.16 . Everything went fine until I received this error:
dpkg: dependency problems prevent configuration of linux-headers-5.16.1-051601-generic: linux-headers-5.16.1-851601-generic depends on libc6 (>= 2.34); however: Version of libc6:amd64 on system is 2.31-8ubuntu9.2. linux-headers-5.16.1-851601-generic depends on libssl3 (>= 3.8.0--alphal); however: Package libssl3 is not installed. dpkg: error processing package linux-headers-5.16.1-051601-generic (--install): dependency problems - leaving unconfigured Setting up linux-image-unsigned-5.16.1-051601-generic (5.16.1-051601.282201160933) . I: /boot/vmlinuz.old is now a symlink to vmlinuz-5.13.0-27-generic I: /boot/initrd.img.old is now a symlink to initrd.img-5.13.0-27-generic I: /boot/vmlinuz is now a symlink to vmlinuz-5.16.1-051601-generic I: /boot/initrd.img is now a symlink to initrd.img-5.16.1-051601-generic Setting up linux-modules-5.16.1-051601-generic (5.16.1-051601.202201160933) Processing triggers for linux-image-unsigned-5.16.1-051601-generic (5.16.1-051601.202201160933) /etc/kernel/postinst.d/initramfs-tools: update-initramfs: Generating /boot/initrd.img-5.16.1-851681-generic I: The initramfs will attempt to resume from /dev/sda2 I: (UUID=91b5f7d6-87fe-498a-a823-88828fa8256a) I: Set the RESUME variable to override this. /etc/kernel/postinst.d/zz-update-grub: Sourcing file 7etc/default/grub. Sourcing file 7etc/default/grub.d/99_breeze-grub.cfg. Sourcing file 7etc/default/grub.d/init-select.cfg. Generating grub configuration file . Found theme: /boot/grub/themes/breeze/theme.txt Found linux image: /boot/vmlinuz-5.16.1-851681-generic Found initrd image: /boot/initrd.img-5.16.1-051601-generic Found linux image: /boot/vmlinuz-5.15.15-051515-generic Found initrd image: /boot/initrd.img-5.15.15-851515-generic Found linux image: /boot/vmlinuz-5.13.8-27-generic Found initrd image: /boot/initrd.img-5.13.8-27-generic Found linux image: /boot/vmlinuz-5.11.0-46-generic Found initrd image: /boot/initrd.img-5.11.0-46-generic Found linux image: /boot/vmlinuz-5.4.0-96-generic Found initrd image: /boot/initrd.img-5.4.0-96-generic Found memtest86+ image: /boot/memtest86+.elf Found memtest86+ image: /boot/memtest86+.bin done Errors were encountered while processing: linux-headers-5.16.1-051681-generic
- OS : Kubuntu 21.10 (Currently running Kernel 5.13)
- CPU: i3-8100
- Storage: 250GB NVMe M.2 SSD
- GPU : Nvidia GeForce GTX 1650
- RAM: 8GB 2400 MHz
Обновление ядра в Ubuntu
Ядро дистрибутивов Linux — основа операционной системы, которая отвечает за совместимость с устройствами и выполняет другие важные опции. Сейчас разработчики стараются раз в несколько месяцев или даже чаще выпускать обновления ядер для введения новых функций и поддержки производимого оборудования. К Ubuntu эта тема тоже относится, поэтому некоторые обладатели данного дистрибутива сталкиваются с необходимостью инсталляции апдейтов. Выполняется данная процедура относительно сложно, поскольку каждое действие будет производиться через «Терминал». Далее мы хотим продемонстрировать два способа, позволяющих справиться с поставленной задачей.
Обновляем ядро в Ubuntu
Официальный сайт, на котором находится информация по каждому обновлению ядра, называется kernel.org. Именно там вы можете просмотреть абсолютно все апдейты и изменения, внесенные в интересующую версию. Что же касается самого процесса обновления, то происходит он в ручном или автоматическом режиме. Каждый из этих вариантов имеет свои сложности и особенности, поэтому мы предлагаем детально изучить их по очереди, чтобы в итоге остановиться на оптимальном. Однако для начала давайте разберемся, как узнать текущую версию ядра.
Определяем текущую версию ядра в Ubuntu
Определение текущей версии ядра в Убунту происходит через стандартный «Терминал» путем ввода всего одной команды. Для этого даже не понадобятся права суперпользователя, а весь процесс займет всего несколько секунд.
- Откройте меню приложений и запустите оттуда «Терминал». Вы можете открыть консоль и другим удобным для вас способом.
Теперь вы знаете, какое именно ядро используется в вашей сборке и сможете понять, стоит ли его сейчас обновлять и от какого типа отталкиваться. В будущем, по завершении инсталляции апдейтов, мы рекомендуем задействовать эту команду, чтобы определить корректность установки файлов.
Способ 1: Ручной режим обновления
Ручной режим обновления ядра в Ubuntu займет немного больше времени, нежели автоматический, но при этом вы получите вариативность в выборе версий и даже сможете их скачать заранее с другого компьютера, например, на флешку, если подключение к сети на главном ПК отсутствует. От вас потребуется лишь предварительно выбрать подходящую сборку и задействовать приведенные команды, чтобы инсталлировать ее.
- Откройте браузер и перейдите по указанной выше ссылке. Здесь вы можете выбрать первую директорию под названием «daily». В ней находятся последние версии ядра, обновляемые каждый день. В противном случае просто опускайтесь в самый низ по списку, чтобы отыскать последнюю подходящую сборку.
Проблемы с инсталляцией ядра через стандартный менеджер пакетов — ситуация часто встречающаяся. В большинстве случаев она решается путем использования стороннего установщика. Для начала его следует добавить, а потом уже воспользоваться встроенными функциями.
- Вы можете задействовать эту же сессию «Терминала» или создать новую. Введите в ней команду sudo apt-get install gdebi и нажмите на Enter.
- Для подтверждения прав доступа потребуется ввести пароль суперпользователя.
- При появлении уведомления о расширении объема занятого дискового пространства выберите вариант Д.
- После этого снова переместитесь к тому пути, куда были помещены DEB-пакеты, например, через команду cd ~/Загрузки .
- Используйте строку sudo gdebi linux-headers*.deb linux-image-*.deb .
- Ожидайте окончания чтения и распаковки файлов.
- Подтвердите операцию инсталляции пакетов.
- Для применения всех изменений потребуется обновить загрузчик путем ввода sudo update-grub .
- Вы будете уведомлены, что обновление прошло успешно.
Сразу же после перезагрузки компьютера все изменения вступят в силу. Теперь вы будете использовать операционную систему на новом ядре. Если вдруг загрузчик по каким-либо причинам сломался, обратитесь к разделу в конце данного материала. Там мы детально расскажем о причинах неполадок и опишем метод решения.
Способ 2: Автоматическое обновление ядра
Этот метод подойдет тем пользователям, которые хотят получать обновления регулярно, задействовав для этого одно и то же средство, устанавливающее на ПК самую последнюю версию ядра. Осуществляется эта операция путем использования скрипта. Давайте рассмотрим, как создать его и инсталлировать апдейты для ядра Ubuntu.
- Для начала перейдите в папку, куда будет инсталлирован скрипт. Запустите консоль и введите команду cd /tmp .
- Используйте команду git clone git://github.com/GM-Script-Writer-62850/Ubuntu-Mainline-Kernel-Updater .
- Если вы получили уведомление об отсутствии команды git, следуйте приведенной рекомендации по инсталляции.
- После останется только записать скрипт путем вода bash Ubuntu-Mainline-Kernel-Updater/install .
- Подтвердите добавление файлов, выбрав положительный вариант ответа.
- Проверка обновлений запускается через KernelUpdateChecker -r yakkety . Учтите, что ветка -r используется для определения версии дистрибутива. Указывайте опцию в соответствии со своими потребностями.
- Если апдейты ядра будут найдены, установите их через sudo /tmp/kernel-update .
- По окончании обязательно проверьте текущее активное ядро через uname -r и обновите GRUB.
Теперь каждый раз, когда понадобится выполнить поиск обновлений ядра, вы можете задействовать указанную выше команду для осуществления поставленной задачи в автоматическом режиме. Вам лишь останется подтверждать все предупреждения о расширении занятого дискового пространства. Если скрипт больше не нужен, рекомендуется удалить его из системы через следующие команды:
rm ~/.config/autostart/KernelUpdate.desktop
sudo rm /usr/local/bin/KernelUpdate
Решение проблем с загрузчиком GRUB после обновления ядра
Иногда во время инсталляции апдейтов для ядра происходят ошибки или же пользователь сам завершил установку файлов невовремя. В таких ситуациях возникает неполадка, при которой операционная система попросту перестает загружаться. Касается это и обладателей проприетарных драйверов от компании NVIDIA. Решение здесь одно: загрузиться со старого ядра и удалить новое с дальнейшей переустановкой или выбором более стабильной версии.
- Включите компьютер и сразу же нажмите на клавишу Esc, чтобы перейти к меню загрузок. Используйте стрелки для перемещения к пункту «Дополнительные параметры для Ubuntu», а затем нажмите на Enter.
- Отыщите здесь ваше старое рабочее ядро и выберите его для загрузки.
- Войдите в свою учетную запись, и после успешного включения графической оболочки запустите консоль.
- Введите sudo apt remove linux-header-5.2* linux-image-5.2* , где 5.2 — версия установленного ранее ядра.
- Укажите пароль для предоставления прав суперпользователя.
- После успешного удаления обновите загрузчик через sudo update-grub .
- Вы будете уведомлены о том, что генерация файла прошла успешно, и теперь вы снова будете загружаться со старого ядра.
В рамках сегодняшнего материала вы узнали о двух методах обновления ядра в Ubuntu. Как видите, для осуществления каждого из них придется выполнить ряд консольных команд, но выбор самого варианта уже зависит от ваших потребностей. Используйте представленную в конце статьи инструкцию, чтобы быстро решить возникшие неполадки с загрузкой ПК после инсталляции новой версии ядра.