Как я могу ограничить размер моей папки ~ / .cache

Я запускаю Ubuntu на SSD с ограниченным размером, поэтому я подсчитываю каждый ГБ. Теперь папка ~ / .cache выросла до 1,7 ГБ (различные приложения, такие как Chrome, Spotify и т. Д. Заполнили ее), и теперь мне интересно, есть ли способ ограничить размер этого кеша?

Я видел некоторые решения, предлагающие добавить cronjob для удаления старых файлов с использованием какого-либо обмана awk, но я не знаю, как все эти приложения обрабатывались бы, если бы случайные файлы были просто удалены (или это нормально?). Кроме того, это решение не рекурсивно ищет папку.

Если вы собираетесь использовать какую-либо технику с этим вопросом , я бы пошел на поисковую технику в задание cron и изменил его, чтобы проверить размер:

@daily find /home/username/.cache/ -atime +7 -size 50M -delete 

Очевидно, есть игра с этим. Вы можете исключить определенные пути из запроса, так как .cache содержит много вещей, которые могут быть реальной болью в заднице для восстановления (например, миниатюры для некоторых медиаплееров или просмотрщиков фотографий).

Конечно, другой вариант переключает все на tmpfs , добавив что-то вроде следующего в ваш /etc/fstab :

 tmpfs /home/username/.cache/ tmpfs defaults,noatime,mode=1777 0 0 

И это будет хранить все в ОЗУ (после sudo mount -a или перезагрузки). Очевидно, это означает, что как только вы отключите питание, вы потеряли все. Это, вероятно, подходит только для настольных компьютеров, которые редко перезапускаются и имеют много оперативной памяти.

Эти два варианта могут использоваться в комбинации.


Другой вариант – переместить кеш на более медленные, более дешевые носители. Если у вас есть место для большого магнитного диска на вашем компьютере, это часто быстрый и простой способ (либо с символической связью, либо с привязкой) для распространения на нескольких дисках.

Либо это, либо перемещение чего-то другого, не зависящего от скорости (например, документов, музыки и т. Д.) На медленный диск, что дает вам больше места для кеша на SSD.