Ответ можно найти здесь: https://www.kernel.org/doc/gorman/html/understand/understand014.html
Здесь говорится: "... объявлен массив swap_info, который содержит MAX_SWAPFILES, статически определенный как 32 записи. Это означает, что в работающей системе может существовать не более 32 областей подкачки."
Еще больше информации есть в главе 11.2 по этой ссылке, и это гораздо больше, чем я хочу знать
.
Может быть, timeout
сможет вам помочь:https://github.com/pshved/timeout
Со страницы github:
-t T
-установить ограничение времени CPU+SYS на T секунд
-m M
-установить ограничение виртуальной памяти на M килобайт
Например, вам нужно запустить timeout -m 1000000 /bin/chromium-browser
.
Вы можете заменить запись запуска приложения/меню на выполнение вышеуказанной команды для большего удобства.
Вы можете проверять синтаксис ваших файлов в интерактивном режиме:
$ sudo cgconfigparser -l /etc/cgconfig.conf -s 640 -t your-uid:your-gid
Вам необходимо создать контрольную группу и связать разрешения
$ sudo cgcreate -a your-uid:your-gid -t your-uid:your-gid -g memory:browsers
Затем попробуйте запустить браузер с активными cgroups:
$ cgexec -g memory:/browsers /bin/chromium-browser
Другой подход заключается в использовании systemd-run
иMemoryHigh
управления ресурсами, например
systemd-run --user --no-block -p MemoryHigh=1G firefox
MemoryHigh
— это функция CGroup V2, которая не устарела. Как объясняется в systemd.resource -control (5 )справочной странице , мы должны позволить systemd использовать CGroup V2. Для этого мы должны добавить systemd.unified_cgroup_hierarchy=1
к GRUB_CMDLINE_LINUX_DEFAULT
в /etc/default/grun
, а затем запустить update-grub
. Обратите внимание, что этот контроль ресурсов не работает и не работает в некоторых версиях systemd, например. v239 (, где также доступен обходной путь).