Разница заключается в сфере применения и способах ее применения. Ограничения на открытие файлов, установленные с помощью sysctls, применяются ко всей системе, тогда как ограничения, установленные с помощью /etc/security/limits.conf
, применяются только к вещам, которые соответствуют указанным там критериям. Другое основное отличие состоит в том, что ограничения /etc/security/limits.conf
применяются через ulimit и, таким образом, могут быть изменены более легко, в то время как ограничение sysctl, по сути, устанавливает ограничение на выделение памяти в самом ядре.
Как правило, вы почти всегда хотите использовать /etc/security/limits.conf
, даже если вы устанавливаете глобальные ограничения с совпадением с подстановочными знаками, так как это немного надежнее, и обычно все происходит более изящно при попадании с ulimit. ограничения, чем ограничения на выделение памяти ядра.