如何使用apt-get更新到最新的内核?
我当前的内核是3.2.0-26(我的主计算机),而在我的另一台Ubuntu计算机上,我没有使用非官方更新,它是3.2.0-30。 然而,我的主计算机上的更新管理器没有显示可用的内核更新。 它显示了其他更新。
我怀疑是因为在过去我安装了多个主线内核版本(不推荐版本),最多3.5 *系列。
我所追求的:要么:修复自动内核更新。 或者:了解一种方法来检查最新的官方ubuntu内核版本并手动获取(我知道如何从debs安装内核)
我已经尝试过:根据https://askubuntu.com/a/103875/29347卸载未使用的内核,包括“没有号码的通用内核”,然后还有https://ubuntugenius.wordpress.com/2011/01/ 08 / Ubuntu的清理-如何去除的-所有未使用的-Linux内核报头图像和模块/
您自动更新的问题可能是由于主线内核或您删除了“通用”包。
您可以通过apt-get
更新到最新的内核,如下所示:
sudo apt-get update sudo apt-get install linux-image-`uname -r`
如果您还需要标头(以编译无线驱动程序等内核模块):
sudo apt-get install linux-headers -`uname -r`
如果您只想更新默认内核,您应该能够修复它:
sudo apt-get install linux-image-generic
由于linux-image-generic
总是依赖于您的发行版的最新默认内核,因此当您运行apt-get upgrade
时,内核会使用其余的包进行apt-get upgrade
。
如果要更新非默认内核,可以通过运行此脚本来执行此操作:
#!/usr/bin/env bash sudo apt-get update kernel_release="$(uname -r | cut --complement -d'.' -f3)" kernel_release_versions="$(apt-cache search linux-image-${kernel_release})" kernel_release_versions_generic="$(grep linux-image-"${kernel_release_version}".*-generic <<< "$kernel_release_versions")" newest_kernel_of_release="$(echo "$kernel_release_versions_generic" | tail -n1 | cut -d' ' -f1 )" sudo apt-get install $newest_kernel_of_release sudo apt-get dist-upgrade
如果还需要头文件,请另外运行以下命令:
newest_kernel_of_release_headers=${newest_kernel_of_release/image/headers} sudo apt-get install $newest_kernel_of_release_headers
“您应该能够使用任何列出的镜像,在/etc/apt/sources.list中添加一行,如下所示:
deb http://security.ubuntu.com/ubuntu raring-security main
“
通过
http://packages.ubuntu.com/raring/all/linux-headers-3.8.0-31/download