Используя Ubuntu 16.04 ... Я только что обновил ядро с 4.4 до 4.9, которое работает нормально, но когда я выпускаю
apt-get upgrade
он предлагает мне установить
The following packages have been kept back:
linux-generic linux-headers-generic linux-image-generic
поэтому, естественно, я попытался установить выше, но я вижу, что он указывает на 4.4, а не 4.9 :
sudo apt-get install linux-generic linux-headers-generic linux-image-generic
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
linux-headers-4.4.0-62 linux-headers-4.4.0-62-generic linux-image-4.4.0-62-generic linux-image-extra-4.4.0-62-generic
Suggested packages:
fdutils linux-tools
The following NEW packages will be installed:
linux-headers-4.4.0-62 linux-headers-4.4.0-62-generic linux-image-4.4.0-62-generic linux-image-extra-4.4.0-62-generic
The following packages will be upgraded:
linux-generic linux-headers-generic linux-image-generic
Интересно, когда я прошу установить пакет заголовков 4.9, я обнаруживаю, что они уже установлены
sudo apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
linux-headers-4.9.0-040900-generic is already the newest version (4.9.0-040900.201612111631).
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Как мне убедить мою систему, что пакет linux-generic должен указывать на 4.9, а не на 4.4? ... Я вижу, что предстоящая Ubuntu Zesty 17.04 будет использовать 4.9 ... Если я хочу 4.9 есть ли что-нибудь, что я могу сделать сейчас, чтобы установить 4.9 версии выше или просто установить 17.04 сейчас?
Вот как я обновил мою Ubuntu 16.04 с ядра 4.4 до 4.9
cd /tmp/
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb
sudo dpkg -i *.deb
sudo reboot now
uname -r
4.9.0-040900-generic
UPDATE После ручного обновления ядра с v4.4 до v4.9 коробка была в порядке в течение нескольких недель, пока docker не захотел обновления ... это не удалось
systemctl restart docker
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
journalctl -xe
Feb 05 17:01:06 bodhisattva polkitd(authority=local)[1767]: Registered Authentication Agent for unix-process:8451:61106220 (system bus name :1.347 [/usr/bi
Feb 05 17:01:06 bodhisattva gnome-session[3383]: Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.
Feb 05 17:01:11 bodhisattva polkitd(authority=local)[1767]: Operator of unix-session:c2 successfully authenticated as unix-user:stens to gain TEMPORARY aut
Feb 05 17:01:11 bodhisattva systemd[1]: Stopped Docker Application Container Engine.
-- Subject: Unit docker.service has finished shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has finished shutting down.
Feb 05 17:01:11 bodhisattva systemd[1]: Starting Docker Socket for the API.
-- Subject: Unit docker.socket has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.socket has begun starting up.
Feb 05 17:01:11 bodhisattva systemd[1]: Listening on Docker Socket for the API.
-- Subject: Unit docker.socket has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.socket has finished starting up.
--
-- The start-up result is done.
Feb 05 17:01:11 bodhisattva systemd[1]: Starting Docker Application Container Engine...
-- Subject: Unit docker.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has begun starting up.
Feb 05 17:01:11 bodhisattva dockerd[8461]: time="2017-02-05T17:01:11.687485266-05:00" level=info msg="libcontainerd: new containerd process, pid: 8467"
Feb 05 17:01:12 bodhisattva dockerd[8461]: time="2017-02-05T17:01:12.692845664-05:00" level=error msg="[graphdriver] prior storage driver aufs failed: driv
Feb 05 17:01:12 bodhisattva dockerd[8461]: Error starting daemon: error initializing graphdriver: driver not supported
Feb 05 17:01:12 bodhisattva systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Feb 05 17:01:12 bodhisattva systemd[1]: Failed to start Docker Application Container Engine.
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has failed.
--
-- The result is failed.
Feb 05 17:01:12 bodhisattva systemd[1]: docker.service: Unit entered failed state.
Feb 05 17:01:12 bodhisattva systemd[1]: docker.service: Failed with result 'exit-code'.
Feb 05 17:01:12 bodhisattva polkitd(authority=local)[1767]: Unregistered Authentication Agent for unix-process:8451:61106220 (system bus name :1.347, object
поэтому я вернул ядро обратно к оригинальному и это устранило проблему обновления докера ... вот как я вернул ядро с v4.9 обратно к v4.4 ... сначала перезагрузитесь, удерживая клавишу Shift затем в меню GRUB выберите Advanced options и загрузитесь в предыдущий релиз v4.4 ... затем после загрузки я перечислил ядра
dpkg -l | tail -n +6 | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)
rc linux-image-4.4.0-47-generic 4.4.0-47.68 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-49-generic 4.4.0-49.70 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-51-generic 4.4.0-51.72 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-52-generic 4.4.0-52.73 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-53-generic 4.4.0-53.74 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-57-generic 4.4.0-57.78 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-58-generic 4.4.0-58.79 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.9.0-040900-generic 4.9.0-040900.201612111631 amd64 Linux kernel image for version 4.9.0 on 64 bit x86 SMP
затем выпустил
sudo dpkg --purge linux-image-4.9.0-040900-generic
и теперь это успешно запущено
sudo apt-get install linux-generic linux-headers-generic linux-image-generic
The following packages have been kept back:
linux-generic linux-headers-generic linux-image-generic
, обсуждено здесь: ( digitalocean.com - от Пакетов воздержались новое изображение Ubuntu 14 ), и решение состоит в том, чтобы работать:
sudo apt-get dist-upgrade
The following NEW packages will be installed:
linux-headers-4.4.0-62 linux-headers-4.4.0-62-generic linux-image-4.4.0-62-generic linux-image-extra-4.4.0-62-generic
, совершенно нормально и не повод для беспокойства. Когда Вы делаете регулярные обновления Ubuntu 16.04, 4.4.0-xx ядро автоматически обновляется. Это не имеет никакого отношения к Вашему Ядру 4.9.4 или Ядру 4.9.5, который является первой опцией в Вашем меню Grub.
4.4.0-xxx ядра доступны для начальной загрузки при необходимости на Личинке меню Advanced Options .
при наблюдении системы, Вы будете видеть заголовки Linux для всех версий ядра на Вашем диске:
$ ls /lib/modules
3.13.0-92-generic 4.7.1-040701-generic 4.8.12-040812-generic
3.2.0-113-generic 4.7.2-040702-generic 4.8.4-040804-generic
4.4.0-53-generic 4.7.3-040703-generic 4.8.5-040805-generic
4.4.0-57-generic 4.7.5-040705-generic 4.9.0-040900-generic
4.4.0-59-generic 4.8.10-040810-generic 4.9.1-040901-generic
4.4.33-040433-generic 4.8.1-040801-generic 4.9.4-040904-generic
4.6.3-040603-generic 4.8.11-040811-generic
Для наблюдения заголовочных файлов для 4.4.0-xxx:
$ ls /lib/modules/4.4.0-59-generic/build/include/linux
8250_pci.h i2c-smbus.h phy_fixed.h
acct.h i2c-xiic.h phy.h
acpi_dma.h i7300_idle.h pid.h
(... hundreds of files ....)
i2c-pnx.h phonet.h zsmalloc.h
i2c-pxa.h phy zutil.h
Для наблюдения заголовочных файлов для 4.9.4:
$ ls /lib/modules/4.9.4-040904-generic/build/include/linux
8250_pci.h i2c-ocores.h phy_fixed.h
acct.h i2c-omap.h phy.h
acpi_dma.h i2c-pca-platform.h pid.h
(... hundreds of files ....)
i2c-mux-gpio.h pfn_t.h zutil.h
i2c-mux.h phonet.h
i2c-mux-pinctrl.h phy
необходимо работать sudo apt-get autoremove
периодически для вычищения старых версий 4.4.0-xxx ядер. Это сохранит новую версию плюс следующее самое старое.
Более старые версии ядра для 4,6, 4.7, 4.8 и 4.9 должны быть вручную удалены с помощью:
sudo apt-get purge linux-image-x.x.x.x-generic
сопровождаемый:
sudo update-grub
, Поскольку каждая версия ядра> 100 МБ, можно сохранить большое пространство памяти. Полная запись для удаления более старых ядер, которые Вы вручную установили, может быть найдена здесь: , Как я удаляю старые версии ядра для чистки меню начальной загрузки?
apt-get
имеет сообщение для Вас:
Suggested packages:
fdutils linux-tools
Это не происходит в моей системе и могло бы представлять интерес исследовать далее.
я раньше использовал wget
, как Вы сделали, потому что это популярно / общие инструкции в Интернете. Требуется определенный ввод и присоединение строк все же. Более легкий путь состоит в том, чтобы только перейти к:
http://kernel.ubuntu.com/~kernel-ppa/mainline/
Нажатие Конец ключ и нажимает 4.9.5
или новейшее ядро, которое Вы хотите. Затем этот экран появляется:
Принятие yoyu хочет 64-разрядную универсальную версию, нажмите:
Все три загрузки легко запустятся для Вас без сложного ввода.
, Когда сделанный открытый терминал с Ctrl + Высокий звук + T и тип:
cd Downloads
sudo dpkg -i *.deb
rm *4.9.5*
я думаю, что все найдут этот метод намного легче, чем методы обычно публикуемый в Интернете.
, Хотя Ваш оператор Zesty будет использовать версию 4.9 ядра, вчера было верно, что это не верно сегодня. Согласно этой истории выпустил час назад: ( softpedia.com - разработчики Ubuntu, теперь отслеживающие Ядро Linux 4.10 для Ubuntu 17.04 Пикантный Zapus), они используют Ядро 4,10 rc4.
, Который сказал, что я буду придерживаться Ядра 4.9.5, который стабилен и имеет улучшения для i915 и AMD южные Острова, которые могли бы заинтересовать многих здесь.
Ответ прост: Вы не можете.
релизы Ubuntu поддерживают определенные ядра, которые не идентичны магистрали Linux.
Каноническая Команда Ядра поддерживает ядра Ubuntu на основе версий ядра магистрали Linux. Во многих случаях устранение ошибки и поддержка некоторых аппаратных средств бэкпортируются от более новых ядер магистрали.
Ubuntu 16.04 поддерживает 4,4 ядра и скоро будет также поддерживать 4.8 HWE. Ubuntu 16.10 поддерживает 4.8. Только эти ядра получают обновления из репозиториев Ubuntu.
можно установить ядра магистрали на Ваш собственный риск, но они не получат обновления. Необходимо будет обновить их вручную. Также проблемы с неподдерживаемыми ядрами вне темы на этом сайте.
Личинка будет всегда загружаться с самой высокой версией ядра, установленной, неважно, как она была установлена. Так наличие 4,4 ядер Ubuntu не будет влиять ни на какие другие ядра с числами старшей версии.
, Если Вы уверены, что сплачиваетесь, хотят использовать только ядра магистрали, которые Вы планируете вручную установить и обновить, можно удалить метапакеты ядра. После этого Вы прекратите получать обновления поддерживаемых ядер Ubuntu.
Это может быть сделано
sudo apt remove linux-image-generic linux-headers-generic
команда.