我的启动驱动器上的空间已用完,所以我决定删除旧内核。我发现此页面准确地描述了我应该做什么:Lubuntu文档:删除旧内核。
我已经手动删除了最旧的内核,现在可以了,但是我不明白一件事:在文章的末尾有一些代码可以删除所有旧的内核版本,但是标记为仅适用于高级用户。
我真的不明白这里有什么危险。这听起来很愚蠢,但是他们似乎说一台特定机器可能同时使用多个内核。
Ubuntu计算机上的不同应用程序是否可以同时使用不同的内核?为什么删除所有旧内核会自动被视为危险?
我的启动驱动器上的空间已用完,所以我决定删除旧内核。我发现此页面准确地描述了我应该做什么:Lubuntu文档:删除旧内核。
我已经手动删除了最旧的内核,现在可以了,但是我不明白一件事:在文章的末尾有一些代码可以删除所有旧的内核版本,但是标记为仅适用于高级用户。
我真的不明白这里有什么危险。这听起来很愚蠢,但是他们似乎说一台特定机器可能同时使用多个内核。
Ubuntu计算机上的不同应用程序是否可以同时使用不同的内核?为什么删除所有旧内核会自动被视为危险?
Answers:
删除旧内核并不是天生不安全的,但是如果删除所有内核并重新启动,您将被惹恼Grub屏幕。修复需要大量专业知识(像那样,但最后要有一个apt-get install linux-generic
技巧)。
第一次执行此操作非常令人兴奋,但是希望清理Grub菜单或恢复某些磁盘空间的人们并没有为此感到兴奋。
该危险来自用户的复制粘贴的代码块-unbeknownst他们并没有承认risks-不适用。检测旧内核的例子很多,而完美的例子很少。甚至我最近的努力仍然有其陷阱。我们正在谈论可以解决的问题;如果使用不当,Ask Ubuntu上的许多帖子可能会导致永久性数据丢失。
我们试图通过警告风险来使用户意识到潜在的问题,以防止损坏。在最佳情况下,用户将准备好并有能力处理问题,而在最坏的情况下,至少他们不能抱怨自己没有受到警告。
dd if=/dev/zero of=/dev/sda bs=512 count=1
。我不记得自己在做什么(关于多个启动管理器使我的生活烦恼)。我在LiveCD上花费了大约七个小时,试图修复分区表。
旧的内核是软件包的一部分。如果您只是移走,/boot/vmlinuz-3.13.0-44-generic
您将把面包屑留在各处。
首先,找出您正在运行的内核。请勿删除任何具有此值的名称:
$ uname -r
3.13.0-49-generic
YMMV。然后,询问dpkg
它知道什么:
$ dpkg -l linux-*
这些软件包中的一些可以删除,但是还有什么呢?使用从MY的输出中提取的一行(在MY系统上)dpkg -l linux-*
:
ii linux-image-3.13.0-44-generic 3.13.0-44.73 amd64 Linux kernel image for version 3.13.0 on 64 bit x86 SMP
现在,我们将看到其他软件包-3.13.0-44
的名称:
$ dpkg -l *-3.13.0-44*
一旦进行了最后检查以确保当前内核(uname -r
)不在软件包列表中,就可以开始通过所选的软件包管理系统删除它们。
这不是不安全的。使用Linux,如果知道正确的命令,则可以完全执行所需的操作。
在/boot
目录中,您可以简单ls -la
地列出长长的清单,以及查找任何隐藏的文件或目录(如果有的话不应该存在!)。
从此信息中,您可以评估日期和旧版本的文件。不要删除所有文件,而是删除与同一版本对应的最旧文件。
在某个时候,我在想,如果您从源代码编译了内核,则可能需要调整一个新内核。根据.config
您的解释,我认为情况并非如此,该文件将保留在该文件中。
因此,如果在删除与单个版本相对应的旧文件之后并重新启动计算机后,可能会遇到内核崩溃的情况。
简单的解决方案是使用实时USB或CD / DVD Linux引导计算机。chroot
进入其中,并使用诸如工具重新构建内核dracut
。