目前,我正在运行Linux-3.0,我想将其更新为Linux-3.3.1(如http://www.kernel.org所述)为最新的稳定内核版本。我可以在Ubuntu中更新到3.3.1,而没有崩溃的风险吗?我正在按照更新管理器的要求定期更新我的内核。目前我有Linux-3.0.0.17。可以更新吗?

注意:

最新的内核任何用户应该在Ubuntu中使用的版本都会通过Update Manager自动更新,因此用户通常不需要采取任何有关内核升级的操作。问题作者指的是主线内核,请参阅:我应该升级到“主线”内核吗?

评论

相关:我应该升级到“主线”内核吗?

#1 楼

我一直用于内核升级/降级的最简单的指令集是ubuntuforums.org用户使用的名称lykwydchykyn(我为这篇文章修改的网址):


转到此处:http ://kernel.ubuntu.com/~kernel-ppa/mainline/


下载3(也许4)个deb到某个文件夹:

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



用您使用的任何软件包管理器前端安装deb(gdebi还在吗?),或使用以下命令:

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



来源:


https://wiki.ubuntu.com/Kernel/MainlineBuilds
http://ubuntuforums.org/showthread.php? p = 11391743#post11391743


评论


例如,在这里您可以找到每种体系结构的两个版本:低延迟和通用,该采用哪种版本? kernel.ubuntu.com/~kernel-ppa/mainline/v3.14.1-trusty

–rubo77
2014年8月7日在2:42

没有运气。我来自标准存储库中的64位Utopic低延迟内核(3.16.0-31)。我已升级到v3.16.7-ckt8(linux-image-3.16.7-031607-lowlatency_3.16.7-031607.201503111033_amd64.deb),但该键盘仍未运行。这是针对Acer C710。

–致富主义者
15年3月22日在23:58

我有触摸板问题。我的默认BIOS设置为高级模式。它说在BIOS中,在没有驱动程序的情况下使用高级模式可能会出现问题。但是基本模式在ubuntu中效果很好。不幸的是,基本模式在Windows中非常糟糕!我希望这会以简单的方式有所帮助。

–比丘(Bhikkhu Subhuti)
16-3-4在1:11

为了完整起见,除了@Bucic的步骤外-(4)接受新的grub引导加载程序(第一个选项)。这可能是大多数人需要的。如果您想确切地看到更改,请进行比较以进行检查,但是它可能只是使用所需的新内核信息来重写Grub conf文件。 (5)重启。另外,这是更安全的方法,它还会升级您的Linux版本:sudo apt-get update && sudo apt-get dist-upgrade && sudo reboot。在任何一种情况下,重新引导后,运行echo $ {uname -r)确认您已成功引导到新内核中。

– Manuel J. Diaz
16年6月1日在4:18

关于低延迟与通用的@ rubo77:askubuntu.com/questions/126664/…

– Noremac
16-12-12在17:10



#2 楼

您总是可以执行以下操作:

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


评论


那不会提供主线内核。相反,它将提供(指定版本号的)Ubuntu构建。

– Eliah Kagan
13年5月5日在9:17

不过,它可能比使用主线更好,因为它已经针对目标操作系统进行了按摩。

–quickshiftin
13年10月2日,下午3:43

在Debian 8中像魅力一样工作。谢谢!

–GTodorov
15年2月2日在18:54

不要忘记也安装内核头文件:sudo apt-get install linux-headers- [version] -generic。 [版本]应该与内核版本相同

– mauek unak
16-2-23在20:49



应当更改该条目,以便它还指示用户安装linux-image-extra软件包,因为如果没有它,某些操作可能无法正常工作-例如用于输入密码以解密磁盘的USB键盘。

– wojci
17年1月1日15:01



#3 楼

我的回答是,可以。稳定版本为3.4,但在本教程中,我使用3.3.1。

Ubuntu(32位)通用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 12.04上所说的那样安装了3.8.5-raring内核。但是现在我的操作系统已关闭,并且没有cli或任何grub菜单。只是想。

–shgnInc
13年4月2日在16:05

很好,但需要更新。我建议找到该版本,然后用google搜索如何安装它。单击页面,直到找到类似的内容。对于rc6,我发现这个yourownlinux.com/2016/03/…

–比丘(Bhikkhu Subhuti)
16-3-4在15:17



#4 楼

与这里的一些答案相反,Ubuntu在主要内核团队的一两天内发布了新内核。我曾经像这里的一些答案一样建议升级硬方法,但是我发现这是一种更简单的方法。

手动安装内核的含义

手动安装内核需要额外的工作。

为何要安装最新的主线内核是有原因的:


上一个Ubuntu LTS内核更新中的错误,您不能降级
您当前的Ubuntu LTS内核更新流或HWE更新中不支持新硬件
您想要仅在最新的主线内核版本中可用的安全升级或新功能。

于2018年1月15日发布的最新稳定主线内核为4.14.13。在撰写本文时,许多人有兴趣安装它来防止Meltdown安全漏洞。如果选择手动安装,则应该知道:较旧的LTS内核只有在主菜单上的第一个选项Ubuntu下才可用,直到它们被更新为止。
手动安装的内核不能用通常的sudo apt auto-remove命令删除。您需要遵循以下步骤:我如何删除旧的内核版本以清理启动菜单?

在您希望恢复常规LTS内核更新方法时,监视旧内核中的开发。然后按照上一个项目符号链接中的说明删除手动安装的主线内核。
手动删除最新的主线内核后,运行sudo update-grub,然后Ubuntu的最新LTS内核将成为Grub主菜单上名为Ubuntu的第一个选项。 >
查找最新的内核

转到(kernel.ubuntu.com-内核PPA Mainline)并按End键:



现在单击链接4.9.8(如果阅读此链接,则单击更新的链接),然后出现以下内容:



注意带有黑色喷枪标记的链接。这是我们将使用Intel或AMD处理器为Ubuntu 16.04 64位下载的三个文件。

使用终端安装

使用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


Voila! -在grub引导菜单中选择第一个选项时,您正在运行最新的内核。在grub的“高级选项”菜单下仍可以使用较早的内核版本。

安装最新的内核十次后,您将问到“如何删除较早的内核版本?”问题。您可以在Ask Ubuntu中找到这些答案。

评论


您应该回答这一句话:“不要使您的生活复杂化”。

–法比
19年7月9日在23:37

内核页面的布局和日志已更改。如果您可以刷新此答案的文本和屏幕截图,那就太好了

– 8bitjunkie
20-10-25在11:53

@ 8bitjunkie我只是检查4.9版内核,它看起来一样。您正在查看什么内核版本?

–WinEunuuchs2Unix
20-10-25在15:52

嗨@ WinEunuuchs2Unix,我在看kernel.ubuntu.com/~kernel-ppa/mainline/v5.9.1

– 8bitjunkie
20-10-26在14:57

#5 楼

答案较晚但又很新。

我将在答案中添加更多信息。现在我的旧内核是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


,表示内核已更新。

评论


您的黑屏问题可能是因为您删除了使用中的内核。安装新内核后,必须重新引导。然后删除旧内核。

–ravery
17年10月2日,下午3:05

好答案。尽管现在情况有所改变,但是我必须将linux-image-extra更改为linux-modules-extra(版本4.18.0-22-generic)才能使此工作正常。

– Deerchao
19年8月27日在12:08



#6 楼

有一种更简单的方法,这就是我使用的方法。只需下载Ubuntu Mainline内核更新程序脚本并从终端运行它即可。它将为您下载.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


几乎完全自动化,并且完全没有问题。

评论


它安装PHP:@不,谢谢

–CpILL
20年4月24日9:00

2014年,当我最初发布评论时还不错,但是,从那时起,我发现轻松处理@Bucic早先给出的答案-将.debs下载到文件夹(/ home / evilsupahfly / Downloads / Kernels /X.XX-something/(在我的情况下),然后在终端上先执行cd {.deb location}然后dpkg -i * .deb。不会搞砸PHP或SkyNet。

– EvilSupahFly
20-6-28在20:02



#7 楼

我写了一个脚本,并且始终会保持最新状态。

ukupgrade:Ubuntu内核升级


打开您喜欢的终端并运行以下命令

授予文件可执行权限

chmod +x ./ukupgrade


调用脚本

./ukupgrade



评论


这是最好的。

–阿里
16年3月3日,12:02

在要求通用时继续安装低延迟版本〜

–user2413
17 Mar 3 '17 at 18:54

我对这个工具一无所知,所以我也写了一个类似的工具,它也支持选择通用/低延迟的风格。您可以在这里找到它:github.com/cristim/kernel-update

– Cristian Măgherușan-Stanciu
17年7月10日在7:54



#8 楼

运行以下终端命令以安装新的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上。如果您在Python脚本中遇到某个问题,只需按Enter键而不是数字即可。

评论


我是那个脚本的作者。我已经修好了。请提交错误报告,大多数时候程序员在有人提交报告之前才知道错误的存在。 :)

– Savvas Radevic
13年7月19日在19:29

如此处最佳答案所述,仅执行deb软件包的安装,您的脚本有什么优势?

–rubo77
2014年8月7日在2:27

自从我崩溃以来,我一直在想这种工具,因为apt没有为我安装依赖项。您会认为apt完全是关于依赖项的。错误。可以针对最新版本更新脚本,也可以搜索脚本并让用户选择。话虽如此,如果我再次启动系统,我将直接进入,因为我找到了rc6的终端命令

–比丘(Bhikkhu Subhuti)
16 Mar 4 '16 at 15:21

@SavvasRadevic ImportError:没有名为apt_pkg的模块

– Yahya
19年3月11日在10:37

@SavvasRadevic我已经做了,但是只是根据您的请求进行报告。

– Yahya
19 Mar 23 '19 at 20:42

#9 楼

如果您不想麻烦手动升级内核,可以尝试UUKU。即使在诸如元素,薄荷之类的Ubuntu衍生产品上也能正常工作。

我用它来解决我的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

#10 楼

另一个选择是尝试定制和优化的构建,例如针对Ubuntu的i3 / i5 / i7优化的3.2.1内核:

DuoPetalFlower,我的Linux实验-3.2.1内核

他还具有Intel原子优化的构建,如果您试图从上网本中挤出最后一点性能,则可以很好地发挥作用。

还有其他类似Liquorix的内核声称可以更好地针对桌面性能进行了优化。

尽管有些人不建议这样做,但您通常可以从更高版本的Ubuntu运行正式内核而不会出现问题。我目前在oneiric上运行3.3.3精确内核,并且我的机器比以往更好。性能和电池寿命增加,而温度下降了几度。从待机状态恢复时黑屏的问题也消失了。尽管我个人没有使用较新内核的问题,但您会发现有些人强烈反对这样做。

#11 楼

如您所见,Ubuntu确实提供了Linux内核的版本,但是并不总是像它们在上游发布的版本一样快,您始终可以自己编译3.3.1内核,但这可能比您期望的要多。如果没有,请四处搜索,我确定您会找到一个可以遵循的教程,例如本教程。 (请注意,我没有彻底检查过一个,因此要小心,因为内核是危险的野兽)

#12 楼

上面的答案都不满足我手动将内核更新到最新稳定版本的问题。 (我当前的笔记本电脑对RC非常敏感,Dell XPS 9365)。

我创建了一个Shell脚本,该脚本搜索较新的内核版本并将其显示为要安装的选项。您可以尝试一下,它在github上,请务必阅读自述文件。

#13 楼

我创建了这个脚本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]\+\)).*//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起针对“ Spectre Variant 2,Mitigation 2”提供了
(请检查http:// github .com / speed47 / spectre-meltdown-checker /)

评论


我在运行此脚本时遇到一些困难。我可能做错了什么,因此,请按以下步骤操作:1.在BIOS中禁用安全启动,2.将脚本保存到kernel-upgrade.sh和chmod 777 kernel-upgrade.sh。然后,我将其作为sudo ./kernel-upgrade.sh运行。然后,我得到以下错误:rm:无法删除'/ var / tmp / kernel / *':没有这样的文件或目录;然后++ wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.16 ... <截断网址>`连接kernel.ubuntu.com(kernel.ubuntu.com)| 91.189.94.216 |:80 ...已连接。 HTTP请求已发送,正在等待响应... 404未找到`404发生了3次

–剩菜沙拉
18年4月14日在2:19

rm的第一个警告可以忽略(我现在添加rm -f)。其余的不清楚,这是什么问题。在此处截断网址无法解决问题。您可以将输出发布到pastebin.com中,以便我们看到生成的URL是什么吗?

–rubo77
18年4月14日在16:41



当然,请粘贴在此处pastebin.com/KcdVdKQr

–剩菜沙拉
18年4月14日在20:36

另外如果有问题,我正在运行ubuntu 17.10

–剩菜沙拉
18年4月14日在21:04

它说这是错误的路径:kernel.ubuntu.com/~kernel-ppa/mainline/v4.16-rc6/…检查此路径是否正确:kernel.ubuntu.com/~kernel-ppa/mainline/v4。 16-rc6

–rubo77
18年4月17日在21:28

#14 楼

安装最新的内核
安装Ubuntu Kernel Update Utility

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

$ sudo apt-get install ukuu


使用以下命令禁用访问控制:

$ sudo xhost +


然后用ukuu安装

$ sudo ukuu

$ sudo ukuu --install-latest


,然后运行以确保安全

$ sudo xhost -


然后重新启动

$ sudo reboot


评论


如果要查看所有内核版本的列表,请使用“ sudo ukuu --list”。

– Vitaliy LiBrus
19年1月16日在9:04

如果要查看ukuu的其他选项,请键入'ukuu --help'

– Vitaliy LiBrus
19年1月16日在9:05

完成后,您不应该执行sudo xhost吗? (比较:github.com/teejee2008/ukuu/issues/25#issuecomment-341501666)

–学生
19年5月30日在13:45

@学生,是的,谢谢!我将其添加到步骤列表

– Vitaliy LiBrus
19年6月3日在11:33

#15 楼

检查您的内核版本
$ uname -sr

下载32位内核v5

$ 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

下载64位内核v5

$ 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

#16 楼

实际上,我发现了一个非常容易升级的命令行界面,它非常简单,它只有一个bash脚本,称为ubuntu-mainline-kernel
安装:
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。容易且不安装多余的垃圾