вы можете попробовать запустить скрипт vmstat параллельно с вашим процессом (обратите внимание, что это не очень хорошая идея, если вы запускаете этот скрипт несколько раз, так как получите несколько копий vmstat). Затем этот скрипт монитора может взять свободную память, а также размер буфера и кеша, чтобы получить объем памяти, доступный ОС, и вы можете отслеживать это. Затем, если это становится ниже некоторого порога, вы можете проверить самые большие процессы, вызвав ps -e -o ... (подробности см. На странице man, но в качестве отправной точки попробуйте vsz, pcpu, user, pid, args).
Я бы посоветовал запускать этот монитор как отдельный процесс и убивать мошеннический процесс, когда он становится слишком большим. Вы можете ограничить набор контролируемых процессов с помощью
-u user-name
параметр в пс.
Это все взлом (в британском значении), хотя - правильное решение - исправить утечки, если у вас есть код.