我的系统带有一个小型 SSD(大约 90 GB 可供我安装的单个 Linux 分区使用/
)和一个更大的 HDD。
现在,我的主目录空间不断膨胀,填满了 SSD 上所有剩余的可用空间。显然,这才是$HOME/.cache
罪魁祸首——超过 33 GB。
现在,我应该用它做什么?
- 将其移动到 HDD 并符号链接
$HOME/.cache
到/mnt/my_hdd_partition/some/path/.cache
? - 确保并偶尔剔除它?
如果您认为我应该做后者,请解释为什么这不会成为太大的负担。
答案1
好吧,你有几个选择。
将缓存移至 tmpfs (RAM)
您可以选择将其挂载或符号链接到 tmpfs(例如,在/run
或下的任何内容/tmp
在大多数发行版上都应该没问题)。
优点:
- 更快的缓存读/写。
- 每次关闭时自动擦除缓存(限制其随时间的增长)。
缺点:
- 全新启动后,必须在每次初始应用程序/系统启动时重新创建缓存。
- 如果一段时间内不重新启动,缓存可能会使用大量 RAM。
偶尔会剔除缓存
有时rm -rf ~/.cache/*
手动或通过自动脚本(例如使用anacron
)。
您甚至可以.cache
仅在脚本超过一定大小时擦除脚本,也许每次关闭时由 systemd 运行,每隔几天由 anacron 运行。
优点:
- 仍在 SSD 上,因此读/写速度仍然相当快
- 仅偶尔擦除,因此并非每次初始启动都需要缓存重新生成。
缺点:
- 有时必须手动擦拭,或者花时间设置自动擦拭。
- 可能仍会填满 SSD,具体取决于缓存增长的速度以及擦除的频率。
- 即使频率较低,您仍然需要偶尔擦除缓存。这意味着您仍然偶尔会遇到初始应用程序启动缓慢的情况。
将缓存移至 HDD
这可能是最明智的选择,它相对简单rm -rf ~/.cache && ln -s /path/to/new/cache ~/.cache
,但它确实有一个缺点,即缓存读/写可能很慢。
优点:
- 简单的
- 无需擦除缓存
- 应用程序启动永远不需要完全重新生成缓存
- 不会耗尽 RAM 或 SSD 空间
缺点:
- 缓存读/写速度可能较慢。这是否会引起人们的注意还有待商榷。
换个更大的SSD
好吧,这可能不是一个有效的选项,但值得一提。 SSD 仍然很昂贵,但它们一直在变得更便宜。
如果您几年前购买了 90GB SSD,那么再次花费同样的钱,您的容量可能会增加一倍以上。
优点
- 您将拥有更大的 SSD,这意味着缓存可能不再占据其中的很大一部分。
缺点:
- 新的电脑硬件很贵!
结论
虽然有几个选项,并且每个选项都有其优缺点,但每个选项的实现和取消实现都相对简单,因此您没有理由不尝试一个选项,然后再测试另一个选项。
就我个人而言,我会将缓存放到 HDD 上(这就是硬盘的用途!),并考虑在我的愿望清单上添加一个更大的 SSD,希望有一天我有闲钱。