Linux Labs

Система изнутри: ресурсы, ядро, процессы / Ступень 4 из 12

ulimit и sysctl: потолки системы

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 10 из 10 · итог · 2 мин

Итог

  • Открытый файл для процесса — дескриптор; сверх мягкого лимита ядро файл не открывает, и программа пишет Too many open files.
  • Лимиты процесс получает от родителя и видит в /proc/<PID>/limits: мягкий он поднимает сам до жёсткого, жёсткий поднимает root.
  • Службе лимиты ставит systemd: LimitNOFILE в drop-in в /etc/systemd/system/<юнит>.d/, затем daemon-reload и перезапуск.
  • sysctl -w меняет параметр ядра до перезагрузки, файл в /etc/sysctl.d — при каждой загрузке, а sysctl --system применяет файлы сразу.
  • Сборщик из начала урока терял журналы, потому что systemd запускал его с LimitNOFILE=64: твои 1024 к нему не относились.
Ubuntu 24.04
Загрузка…