有没有类似于Windows中的CCleaner的应用程序或命令可以清理内存?

系统连续运行8小时后,变得很慢。当我在Windows上遇到相同的情况时,我使用CCleaner清理内存,这通常会给我一点提升。
有没有类似于CCleaner在Windows中清理未使用的现有RAM内存(浏览器、临时文件、预取操作系统文件等)的应用程序或命令?

顺便说一下,“prefetch”是Windows特有的功能,你需要更具体地说明你想要清理什么。此外,CCleaner实际上并不能从法医角度来看“清理”所有文件。 - Thomas Ward
抱歉@ThomasW,之前的问题不够清楚。现在我有更多细节要补充到问题中,请告诉我是否有办法加快系统速度。 - mateen
@ThomasW 根据https://www.piriform.com/ccleaner上的描述,CCleaner确实可以清理所有文件。 - mateen
我已经查看了一个运行了CCleaner的驱动器 - 并不是所有的东西都被清除。而且我所说的是使用重型取证工具进行的检查,而不是常规工具。 - Thomas Ward
谢谢您宝贵的建议,但我只是想要一个能清理未使用内存的工具。以下是答案,请参考。 - mateen
4个回答

1 前言
你的系统在8小时后变得稍微慢一些,这有点奇怪。由于你在Windows上也遇到了同样的问题,我猜想这可能是一个硬件问题。
没有更多的信息很难说,但如果你幸运的话,升级内存可能会有所帮助。如果不行,你可能将来会面临更大的硬件问题。
2 定义和区别
RAM、临时文件、系统文件和预读取是不同的东西。
  • 在Linux系统中,您不需要RAM清理器。

    如果一个进程使用了“太多”的RAM,请停止并重新启动它。这样的内存泄漏程序通常是浏览器和浏览器插件。我也看到过X.org有时会表现不良。

  • 临时文件只使用一些存储空间。因此,它们不会减慢您的系统。

  • 它们被称为系统文件,有其原因。它们中的大部分用于运行您的系统和程序,就像您习惯的那样。因此,如果您不知道自己在做什么,请不要随意更改它们!

  • 预读取是Windows特有的。Linux或Ubuntu的等效物称为(u)readahead

    在Linux系统上,您不必考虑它。

3个软件推荐

  • 我推荐使用BleachBit:它是一个很好的文件清理工具,而且(在root模式下)你几乎不会搞砸你的系统。

    要安装它,请打开终端并输入以下命令:

    sudo apt-get update
    sudo apt-get install bleachbit
    

    输入密码(不会显示字符),然后等待执行完成。

  • 在Ubuntu 12.04之前,你可以使用computer-janitor:但如果你不知道自己在做什么,请小心。你可能会毁掉你的系统!

    要安装它,请打开终端并输入以下命令:

    sudo apt-get update
    sudo apt-get install computer-janitor-gtk
    

    输入密码(不会显示字符),然后等待执行完成。

  • 在Ubuntu 14.04之前,你可以使用Ubuntu Tweak:它内置了电脑清理工具和许多其他或多或少有用的实用程序。但如前所述,请小心!

    要安装它,请打开终端并输入以下命令:

    sudo add-apt-repository ppa:tualatrix/ppa
    sudo apt-get update
    sudo apt-get install ubuntu-tweak
    

    输入密码(不会显示字符),然后等待执行完成。


哇,你看起来像个Linux专家,谢谢你的信息。Ubuntu Tweak是我需要的工具,还有一件事我想问,就是你在回答中提到的内存泄漏是什么,为什么会发生? - mateen
1嗯,我觉得我只是一个对高级用户感兴趣的人...但这不是重点!;-) 内存泄漏 发生在程序的RAM管理不干净(编程问题,没有垃圾回收等)或不正确(其他错误等)。它们是不再需要的RAM部分,但也没有被释放,所以其他程序无法使用这些RAM部分! - DJCrashdummy

"内存"和"临时文件"是两个不同的东西。
内存通常指的是RAM。Linux会自动管理其RAM,无需清理;如果有某个进程行为异常并占用过多的RAM,你只需要停止它即可。浏览器通常是这方面的罪魁祸首;我每隔几周就需要关闭我的浏览器(然后重新启动)。Gnome-shell也是一个众所周知的内存泄漏问题。
至于文件部分,你可以安装Ubuntu Tweak并使用清理模块:

Ubuntu Tweak Janitor

参见Ubuntu Tweak的清理工具有多安全?。您也可以通过PPA进行安装,在WebUpd8上查看(对于14.04仍然有效)。
请注意,如果您清除缓存,数据将需要重新加载/重建,因此效果通常是减慢速度(1)。例如,清除nautilus缩略图意味着它们需要重新构建---从而减慢文件浏览速度。
(1) 唯一的例外是apt-cache和旧内核,在正常情况下,在桌面上,它们几乎总是被视为浪费空间。
如果您的系统真的变慢了,最常见的原因是出现了"恶意"或者泄漏的应用程序。尝试使用top或类似工具捕获它,如果找到了,请发表更具体的问题或错误报告。

通过向/proc/sys/vm目录中的drop_caches文件写入内容,您可以在无需安装更多软件的情况下释放内存。

首先,您将想要使用类似于topfree的程序来查看RAM的使用情况和可用性:

$ free -m
             total       used       free     shared    buffers     cached
Mem:         31730      31118        611      16606         57      25018
-/+ buffers/cache:       6042      25687
Swap:        32313          0      32313

接下来,您需要执行以下命令:
sudo sysctl vm.drop_caches=3

(这大致相当于稍微繁琐一些的 sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches')。

然后运行free命令并查看输出:

$ free -m
             total       used       free     shared    buffers     cached
Mem:         31730       6224      25505        121          2        518
-/+ buffers/cache:       5702      26027
Swap:        32313          0      32313

以下是相关文章的链接,介绍了有关使用 drop_caches 文件的过程和文档内容。

参考资料和进一步阅读:


我以root身份运行了echo 3 > /proc/sys/vm/drop_caches命令,它起到了作用。 - amit_kumar

从Ubuntu软件中心下载BleachBit也是一个不错的选择。它可以删除不必要的文件,释放宝贵的磁盘空间,保护隐私并清除垃圾等等。