Как обновить ядро ​​до последней основной версии без какого-либо Distro-обновления?

В настоящее время я использую Linux-3.0 и хочу обновить его до последней стабильной версии ядра Linux-3.3.1, как упоминалось на http://www.kernel.org/. Могу ли я обновиться до 3.3.1 в Ubuntu без риска сбоев? Я регулярно обновляю свое ядро, как это предусмотрено диспетчером обновлений. В настоящее время у меня Linux-3.0.0.17.Могу ли я обновлять?

НОТА:

Последняя версия ядра, которую любой пользователь должен использовать в Ubuntu, обновляется автоматически с помощью диспетчера обновлений, поэтому от пользователя обычно не требуется никаких действий в отношении обновлений ядра. Автор задает вопрос о ядре mainline, см. Должен ли я обновиться до ядра mainline?

18 ответов

Самым простым набором инструкций, которые я всегда использовал для обновления / понижения ядра, является пользователь http://ubuntuforums.org/ по имени lykwydchykyn (URL, модифицированный мной для этого поста):

  1. Зайдите сюда: http://kernel.ubuntu.com/~kernel-ppa/mainline/
  2. Загрузите 3 (может быть 4) дэба в папку где-нибудь:

    linux-headers-VERSION-NUMBER_all.deb
    linux-headers-VERSION-NUMBER_amd64.deb
    linux-image-VERSION-NUMBER_amd64.deb
    linux-image-extra-VERSION-NUMBER_amd64.deb   # if available
    
  3. Установите debs с любым внешним интерфейсом менеджера пакетов, который вы используете (gdebi все еще существует?), Или используйте эти команды:

    cd /path/to/folder/where/you/put/the/debs
    sudo dpkg -i *.deb
    

Источники:

Вы всегда можете сделать следующее:

apt-cache search linux-image

Выберите тот, который вы хотите, а затем сделайте:

sudo apt-get install linux-image-your_version_choice linux-headers-your_version_choice linux-image-extra-your_version_choice

Мой ответ: ДА, ты можешь. Стабильная версия была 3.4, но в этом уроке я использую 3.3.1.

Ubuntu (32-разрядная версия) Generic PAE:

Запустите следующие команды:

mkdir kernel\ v3.3.1-precise && cd kernel\ v3.3.1-precise
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301-generic-pae_3.3.1-030301.201204021435_i386.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301_3.3.1-030301.201204021435_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-image-3.3.1-030301-generic-pae_3.3.1-030301.201204021435_i386.deb
sudo dpkg -i linux-*.deb 
sudo update-grub
sudo reboot now

Ubuntu (64-разрядная версия):

Запустите следующие команды:

mkdir kernel\ v3.3.1-precise && cd kernel\ v3.3.1-precise
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301-generic_3.3.1-030301.201204021435_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-headers-3.3.1-030301_3.3.1-030301.201204021435_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.1-precise/linux-image-3.3.1-030301-generic_3.3.1-030301.201204021435_amd64.deb
sudo dpkg -i linux-*.deb 
sudo update-grub
sudo reboot now

Наслаждайтесь!

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

Последствия ручной установки ядер

Установка ядер вручную требует дополнительной работы.

Есть причины, по которым вы хотите установить последнее основное ядро:

  • Ошибка в последнем обновлении ядра Ubuntu LTS, и вы не можете понизить версию
  • У вас есть новое оборудование, которое не поддерживается в текущем потоке обновлений ядра Ubuntu LTS или обновлениях HWE
  • Требуется обновление безопасности или новая функция, доступная только в последней основной версии ядра.

По состоянию на 15 января 2018 года последнее стабильное основное ядро 4.14.13, На момент написания этой статьи многие заинтересованы установить ее для защиты от дыры в безопасности Meltdown. Если вы решили установить его вручную, вы должны знать:

  • Старые ядра LTS не будут обновляться, пока они не будут больше, чем первая опция главного меню под названием Ubuntu.
  • Установленные вручную ядра не удаляются обычными sudo apt auto-remove команда. Вы должны следовать этому: Как удалить старые версии ядра, чтобы очистить меню загрузки?
  • Следите за развитием событий в старых ядрах, если хотите вернуться к обычному методу обновления ядра LTS. Затем удалите установленное вручную основное ядро, как описано в предыдущей ссылке.
  • После ручного удаления новейшего основного ядра запустить sudo update-grub и тогда последнее ядро ​​LTS в Ubuntu будет первым вариантом под названием Ubuntu в главном меню Grub.

Нахождение новейшего ядра

Перейдите на ( http://kernel.ubuntu.com/~kernel-ppa/mainline/) и нажмите клавишу завершения:

Теперь нажмите на ссылку 4.9.8 (или более новый, если доступен, когда вы читаете это), и появляется следующее:

Обратите внимание на ссылки с черными отметками аэрографа. Это три, которые мы будем загружать для Ubuntu 16.04 64-Bit с использованием процессоров Intel или AMD.

Установка с использованием терминала

Откройте терминальную сессию с помощью Ctrl + Alt + T и используйте:

cd ~/Downloads # Change to your downloads directory
ll linux*.deb  # Check if any previous downloads still exist
rm linux*.deb  # Use this command if any previous downloads found

Теперь вернитесь к экрану загрузки выше и нажмите один раз на все три .deb загрузка ядра. После завершения загрузки (вы увидите статус в вашем браузере) переключитесь обратно на терминальную сессию и используйте:

sudo dpkg -i linux*.deb
rm linux*.deb
sudo reboot

Вуаля! - вы запускаете последнее ядро, когда выбран первый параметр в меню загрузки grub. Ваши старые версии ядра по-прежнему доступны в меню расширенных настроек grub.

После десятка раз установив новейшее ядро, вы зададите вопрос " Как удалить старые версии ядра? ", И вы найдете ответы на эти вопросы здесь, в Ask Ubuntu.

Поздно , но новый ответ.

Я добавлю больше информации в мой ответ. Теперь мое старое ядро ​​было linux-headers-4.8.0-53 Чтобы узнать, какое ядро ​​у вас типа uname -r в терминал. Теперь введите эту команду, чтобы получить список доступных ядер.

apt-cache search linux-image

это даст вам очень большой вывод. Теперь выберите один из них, который вы хотите установить, и установите его, следуя командам (не вводите эти команды, как это, замените слово kernal_version на версию ядра, которую вы хотите установить)

sudo apt-get install linux-image-kernal_version
sudo apt-get install linux-image-extra-kernal_version
sudo apt-get install linux-headers-kernal_version

Теперь в моем случае я выбираю linux-image-4.10.0-22-generic так что моя команда будет выглядеть так

sudo apt-get install linux-image-4.10.0-22-generic 
sudo apt-get install linux-image-extra-4.10.0-22-generic
sudo apt-get install linux-headers-4.10.0-22-generic

теперь в конце удалите старое ядро ​​командой

sudo apt-get autoremove

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

uname -r

и это дает мне

linux-image-4.10.0-22-generic

что означает, что ядро ​​обновлено.

Есть намного более простой способ сделать это, и это способ, которым я использую. Просто скачайте скрипт Ubuntu Mainline Kernel Updater и запустите его из терминала. Он загрузит.deb для вас, установит новое ядро ​​и, при желании, удалит старое (не рекомендуется), а затем при необходимости перезагрузится.

Пример вывода (скопировано с моего терминала):

evilsupahfly@the-black-beast:~$ sudo KernelUpdateChecker -no-rc -r utopic
Run this command to install the new kernel
/tmp/kernel-update
root@the-black-beast:~# /tmp/kernel-update
Config Notes:
Rejecting Release Candidates
Accepting Latest Kernel
Accepting kernels compiled for utopic
Accepting kernels with a version higher than 3.15.0-031500-lowlatency

Information:
Origin: 
    http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.15.1-utopic
Kernel Version:
    3.15.1-031501
Release Date:
    2014/06/16 @ 18:41 (YYYY/MM/DD @ HH:MM)

Care to look at the change log? (y=Yes, n=No) (n)

(download output skipped)    

Greetings root
    I (the-black-beast) am now self aware and a sentient being, have a nice day.
    Oh and by the way SKYNET is now active.

Installing Linux 3.15.1-031501:

(installer output skipped)

The New Kernel looks to have been installed

WARNING: If the new kernel does not boot you may regret saying yes here.
Would you like to remove the current one? (y=Yes, n=No) (n): n

Are you ready to Reboot? (y=Yes, n=No) (n): n

Почти полностью автоматизирован и абсолютно без проблем.

Выполните следующие команды терминала для установки нового основного ядра Ubuntu.

sudo apt-get update
sudo apt-get install python-bs4 python-apt
cd /tmp
rm -rf medigeek-kmp*
wget https://github.com/medigeek/kmp-downloader/tarball/master -O kmpd.tar.gz
tar xzf kmpd.tar.gz
cd medigeek-*
python kmpd.py -d

Сценарий размещен на Github. Просто нажмите Enter вместо числа, если вы застряли на определенном вопросе в скрипте Python.

Я написал сценарий и всегда буду в курсе.

ukupgrade: обновление ядра Ubuntu

  • Откройте ваш любимый терминал и выполните следующие команды
  • Дать исполняемый файл разрешение на файл

    chmod +x ./ukupgrade

  • Вызвать сценарий

    ./ukupgrade

Если вы не хотите проходить через обновление ядра вручную, попробуйте UUKU. Прекрасно работает даже с производными Ubuntu, такими как elementory, mint.

Я использовал его, чтобы исправить проблему с WiFi, так как иногда старое ядро ​​не может обнаружить какое-то новое оборудование. Кроме обновления аппаратного драйвера я не вижу необходимости обновлять ядро. Новые ядра имеют безопасность и незначительное обновление производительности, но также имеют тенденцию ломать такие вещи, как ваша виртуальная машина.

sudo apt-add-repository -y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install ukuu
ukuu-gtk

ИСТОЧНИК:

http://www.makeuseof.com/tag/upgrade-kernel-ukuu-ubuntu/

http://www.teejeetech.in/2016/07/ukuu-v167.html?m=1

Другой вариант - попробовать настроенные и оптимизированные сборки, такие как это оптимизированное для i3/i5/i7 ядро ​​3.2.1 для Ubuntu:

DuoPetalFlower, Мои эксперименты с ядром Linux - 3.2.1

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

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

Хотя это и не рекомендуется некоторыми, вы можете без проблем запускать официальные ядра из более поздних версий Ubuntu. В настоящее время я использую ядро ​​версии 3.3.3 на oneiric, и моя машина работает лучше, чем когда-либо. Производительность и срок службы батареи увеличились, а температура упала на несколько градусов. Моя проблема черного экрана при выходе из режима ожидания также исчезла. Хотя у меня лично не было проблем с использованием более новых ядер, вы найдете некоторых людей, которые категорически против этого.

Я создал этот скрипт kernel-upgrade.sh который загружает и устанавливает выбранное ядро ​​с http://kernel.ubuntu.com/~kernel-ppa/mainline:

TMP=/var/tmp/kernel
mkdir -p "$TMP" && cd "$TMP"
rm -f "$TMP"/*
F=v4.16-rc6
V=4.16.0-041600rc6
R=$(wget -qO - "http://kernel.ubuntu.com/~kernel-ppa/mainline/$F/0005-debian-changelog.patch" | sed -ne '/^+linux/{s/.*\.\([0-9]\+\)).*/\1/p;q}')
B="$V.$R"
URL=http://kernel.ubuntu.com/~kernel-ppa/mainline
set -x
wget "$URL/$F/linux-headers-$V-generic_${B}_amd64.deb" \
    "$URL/$F/linux-headers-${V}_${B}_all.deb" \
    "$URL/$F/linux-image-$V-generic_${B}_amd64.deb"
sudo dpkg -i "linux-headers-$V-generic_${B}_amd64.deb" \
    "linux-headers-${V}_${B}_all.deb linux-image-$V-generic_${B}_amd64.deb"
# now enter: sudo reboot now

В случае, если Ubuntu не запускается с новым ядром, вы можете выбрать "дополнительные настройки" в вашем меню grub и выбрать, чтобы запустить там последнее запущенное ядро.


Примечание: начиная с 4.15-rc7 ядро ​​имеет исправление KPTI против атак расплавления, а с 4.15.1 для "Варианта 2, Смягчение 2" (обратитесь по http://github.com/speed47/spectre-meltdown-checker/)

Установить последнее ядро ​​установить Ubuntu Kernel Update Utility

$ sudo add-apt-repository ppa:teejee2008/ppa

$ sudo apt-get install ukuu

отключите контроль доступа с помощью следующей команды:

$ sudo xhost +

затем установить с помощью уку

$ sudo ukuu

$ sudo ukuu --install-latest

и перезагрузка

$ sudo reboot

Как вы видели, Ubuntu предоставляет версии ядра Linux, но не всегда так быстро, как они выпускаются в апстриме, вы всегда можете скомпилировать ядро ​​3.3.1 самостоятельно, но это может потребовать больше усилий, чем вы искали. Если нет, поищите, и я уверен, что вы найдете учебник, которым вы можете следовать, например, этот. (обратите внимание, что я не проверил это тщательно, так что будьте осторожны, так как ядра - опасные звери)

Ни один из приведенных выше ответов не удовлетворил мою проблему ручного обновления ядра до последней стабильной версии. (Мой нынешний ноутбук очень чувствителен к RC, Dell XPS 9365).

Я создал сценарий оболочки, который ищет более свежие версии ядра и показывает их в качестве параметров для установки. Вы можете попробовать, это на github, пожалуйста, не забудьте прочитать README.

На самом деле я нашел действительно простой интерфейс командной строки для обновления, который не требует проблем, это единственный сценарий bash под названием https://github.com/pimlie/ubuntu-mainline-kernel.sh Install:

apt install wget
wget https://raw.githubusercontent.com/pimlie/ubuntu-mainline-kernel.sh/master/ubuntu-mainline-kernel.sh
chmod +x ubuntu-mainline-kernel.sh
sudo mv ubuntu-mainline-kernel.sh /usr/local/bin/

тогда за помощью

ubuntu-mainline-kernel.sh -h

или просто зайдите на README.md по первой ссылке. Легко и не устанавливает лишнего мусора

Есть форк UKUU, он называется Mainline, находится на Github.
И устанавливается из PPA следующим образом:

      sudo add-apt-repository ppa:cappelikan/ppa
sudo apt-get update
sudo apt-get install mainline

И тогда он будет доступен как mainline(КЛИ) и mainline-gtk(графический интерфейс).

Проверьте вашу версию ядра$ uname -sr

Скачать Kernel v5 для 32 бит

$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_i386.deb

Скачать Kernel v5 для 64 бит

$ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-unsigned-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb $ wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb

Установить его

$ sudo dpkg -i *.deb

Затем перезагрузка

sudo reboot

У меня были некоторые проблемы с некоторыми ядрами (производительность, время автономной работы), поэтому, устав от установки и удаления ядер вручную, я разработал этот скрипт:

https://gist.github.com/pdelteil/ab1060cd8fb4da3bd8cf66caaf80d2ad

Кроме того, краткое объяснение скрипта здесь

Другие вопросы по тегам