Більшість значень¹ in - limits.conf
це межі, які можна встановити за допомогою ulimit
команди shell або setrlimit
системного виклику. Вони є властивостями процесу. Обмеження застосовуються незалежно для кожного процесу. Зокрема, кожен процес може мати до nofile
відкритих файлів. Не існує обмеження кількості відкритих файлів, накопичених процесами користувача.
nproc
Межа трохи особливий випадок, в тому , що вона підсумувати всі процеси користувача. Тим не менш, він все ще застосовується до кожного процесу: коли процес викликає fork
створення нового процесу, виклику відмовляється, якщо кількість процесів, що належать до euid процесу, буде більшою за значення процесу RLIMIT_NPROC
.
Сторінка " limits.conf
man" пояснює, що обмеження застосовуються до сеансу. Це означає, що всі процеси в сеансі матимуть ці самі обмеження (якщо вони не будуть змінені одним із цих процесів). Це не означає, що будь-яка сума проводиться за процеси в сеансі (це навіть не те, що відстежує операційна система - є поняття сеансу, але воно більш тонке, ніж це, наприклад, кожна програма X11 має тенденцію закінчуватися вгору на власній сесії). Як це працює, це те, що процес входу встановлює собі певні межі, і вони успадковуються усіма дочірніми процесами.
¹ Винятки є maxlogins
, maxsyslogins
і chroot
які застосовуються як частина процесу входу для заборони або впливу на вхід.