我怎样才能删除已编译的内核?

我怎样才能删除已编译的内核?

我在我的笔记本电脑联想 E455 上安装了 14.10。

并按照下列顺序编译内核 3.19

因为看起来 14.10 不想与我的一起工作。(我看到了慢动作)

下载当前内核http://www.kernel.org/

make oldconfig
make
sudo make install

最后,无法使用新内核启动。

我怎样才能从 grub 中删除已编译的内核并恢复?

答案1

如果通过 编译和安装make install,您将需要手动删除以下条目:

/boot/vmlinuz*KERNEL-VERSION*
/boot/initrd*KERNEL-VERSION*
/boot/System-map*KERNEL-VERSION*
/boot/config-*KERNEL-VERSION*
/lib/modules/*KERNEL-VERSION*/
/var/lib/initramfs/*KERNEL-VERSION*/

然后更新 grub 配置:

sudo update-grub2

如果通过 进行编译debian method,您可以看到已安装kernel以下内容:

dpkg --list | grep kernel-image

然后使用以下命令卸载所需的内核包apt-get

sudo apt-get remove kernel-image-your-kernel-image

参考:

答案2

感谢 jarno 的提问这里我找到了一种实现 Mudit Kapil 答案的方法,它只需要很少的输入,并且可以捕获任何多余的部分

由于删除内核所需要做的就是删除其所有文件和目录,并且所有这些文件和目录的路径中都会包含内核发布字符串,因此我们可以用来locate查找所有带有内核发布字符串的文件并删除它们以删除内核。

(首先检查uname -r当前运行的内核的名称并确保不要删除它)

假设您要删除一个名为 的内核4.4.6-my-kernel。您可以使用 查找其所有现有文件和目录(无需列出所有命名目录中的文件)locate -b -e 4.4.6-my-kernel。将rm -rwith 附加到此命令后xargs,您还可以删除文件。我将其添加-p到 makexargs显示目标并在执行前要求确认

locate -b -e 4.4.6-my-kernel | xargs -p sudo rm -r

然后键入在显示的目标上y执行rm -r。它会抱怨非目录的文件不存在,因为你正在尝试递归删除它们(-r),但没关系,它们仍将与目录及其内容一起被删除。完成后,只需运行

sudo update-grub

瞧!

相关内容