如何删除已编译的内核?

Ohm*_*irl 26 kernel software-uninstall

我在笔记本电脑 Lenovo E455 上安装了 14.10。

并按以下顺序编译内核 3.19

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

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

make oldconfig
make
sudo make install
Run Code Online (Sandbox Code Playgroud)

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

如何从 grub 中删除已编译的内核并恢复?

Mud*_*pil 45

如果通过 编译和安装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*/
Run Code Online (Sandbox Code Playgroud)

然后更新 grub 配置:

sudo update-grub2
Run Code Online (Sandbox Code Playgroud)

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

dpkg --list | grep kernel-image

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

sudo apt-get remove kernel-image-your-kernel-image
Run Code Online (Sandbox Code Playgroud)

  • `/var/lib/initramfs-tools/*KERNEL-VERSION*` 在 Debian 上 (4认同)

Zan*_*nna 12

多亏了 jarno在这里提出的问题我找到了一种实现 Mudit Kapil 答案的方法,该方法只需要很少的输入并捕获任何额外的位

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

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

假设您要删除一个名为4.4.6-my-kernel. 你可以找到所有现有的文件和目录(不列出所有命名目录中的文件)locate -b -e 4.4.6-my-kernel。附加rm -r到这里也xargs允许您删除文件。我添加-p以制作xargs显示目标并在执行前要求确认

locate -b -e 4.4.6-my-kernel | xargs -p sudo rm -r
Run Code Online (Sandbox Code Playgroud)

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

sudo update-grub
Run Code Online (Sandbox Code Playgroud)

等等。