«Сохраняй через перезагрузки», сомневаюсь я. Но вы можете тривиально перестроить кеш при загрузке, который выполняет почти то же самое, за исключением небольшой задержки.
Создайте файл /etc/cron.d/rebuild-fs-cache
и поместите в него следующее:
@reboot root /usr/bin/nice -n 19 /usr/bin/ionice -c 3 -t /usr/bin/find / >/dev/null 2>&1
Он использует nice
и ionice
(который должен быть установлен по умолчанию и определенно доступен через менеджер пакетов; Debian помещает их в coreutils
и util-linux
, соответственно), чтобы понизить приоритет find
процесса до наилучших возможных уровней, что означает, что он не должен мешать чему-либо другому. работает в вашей системе, но это займет немного больше времени. find
Сам пройдёт и stat()
всё, что заставит ядро загрузить данные файловой системы с диска в память.
После того, как кеш построен, пока он не очищен, потому что ОС нужна память для чего-то другого, его следует поддерживать. Я использовал это некоторое время, и списки каталогов даже в больших каталогах значительно быстрее, чем без вышеуказанной работы cron, хотя я не могу привести точные цифры.