如何删除已编译的内核?
我在我的笔记本电脑联想E455上安装了14.10。
并按以下顺序编译内核3.19
因为似乎14.10不想和我一起工作。(我看到慢动作)
从http://www.kernel.org/下载当前内核
make oldconfig make sudo make install
最后,无法使用新内核启动。
如何从grub中删除已编译的内核并获得恢复?
如果通过make install
编译和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
感谢jarno 在这里提出的问题,我找到了一种实现Mudit Kapil答案的方法,这种方式需要很少的打字并且可以捕获任何额外的位
由于删除内核所需的全部内容是删除其所有文件和目录,并且所有这些文件和目录的路径中都有内核发布字符串,我们可以使用locate
查找具有内核发布字符串的所有文件并删除他们删除内核。
(首先检查uname -r
以查找当前运行的内核的名称并确保不删除它)
假设您要删除名为4.4.6-my-kernel
。 您可以使用locate -b -e 4.4.6-my-kernel
找到所有现有文件和目录(不列出所有命名目录中的文件)。 使用xargs
将rm -r
附加到xargs
允许您删除文件。 我添加-p
使xargs
显示目标并在执行前请求确认
locate -b -e 4.4.6-my-kernel | xargs -p sudo rm -r
然后键入y
以在显示的目标上执行rm -r
。 它会抱怨不是目录的文件不存在,因为你试图递归删除它们( -r
)但是没关系,它们仍将与目录及其内容一起删除。 完成后,运行
sudo update-grub
et voila。