У меня есть процесс резервного копирования, который считывает довольно много данных с диска и, следовательно, использует всю память для кеширования диска, отключая приложения и другие кэшированные данные в процессе. Сохранять резервные копии данных в дисковом кеше после завершения резервного копирования бесполезно, поэтому я хотел бы ограничить объем данных, которые могут быть кэшированы ядром для этого процесса. Является ли это возможным?
Спасибо,
Исправьте процесс резервного копирования, чтобы он открывал файлы с O_DIRECT, или чтобы он регулярно вызывал posix_fadvise (..., POSIX_FADV_DONTNEED), когда он выполняется с блоком данных.
Или пожаловаться тому, кто отвечает за программу резервного копирования, чтобы исправить это в соответствии с вышеизложенным.
В качестве альтернативы вы можете создать библиотеку фильтров, которая выполняет вышеуказанное, и LD_PRELOAD эту библиотеку при запуске процесса резервного копирования.