У меня /etc/security/limits.conf
, кажется, не было применено:
a soft nofile 1048576 # default: 1024
a hard nofile 2097152
a soft noproc 262144 # default 128039
a hard noproc 524288
Где a
мое имя пользователя, когда я запускаю, ulimit -Hn
и ulimit -Sn
это показывает:
4096
1024
В /etc/security/limits.d
этом контенте есть только один файл :
scylla - core unlimited
scylla - memlock unlimited
scylla - nofile 200000
scylla - as unlimited
scylla - nproc 8096
Я попытался также добавить эти значения для /etc/security/limits.conf
перезапуска, и сделать это:
echo '
session required pam_limits.so
' | sudo tee -a /etc/pam.d/common-session
но это не сработало. Моя ОС есть Ubuntu 17.04
.
Ответы:
/superuser/1200539/cannot-increase-open-file-limit-past-4096-ubuntu/1200818# =
Существует ошибка с Ubuntu 16, по-видимому.
В принципе:
/etc/systemd/user.conf
для мягкого ограничения и добавьтеDefaultLimitNOFILE=1048576
./etc/systemd/system.conf
для мягкого ограничения и добавьтеDefaultLimitNOFILE=2097152
.Кредит идет в @mkasberg .
источник
Альтернатива для тех, кто предпочитает не редактировать файлы по умолчанию
/etc/systemd/system.conf
и/etc/systemd/user/conf
:создайте новый файл
/etc/systemd/system.conf.d/limits.conf
с таким содержанием:запускать
systemctl daemon-reexec
с правами rootВыйдите из системы и войдите снова
проверить новые границы ни с одной
ulimit -a
илиulimit -n
иulimit -u
для максимальных открытых файлов и максимальное количество процессов, соответственно.Обратитесь к
systemd-system.conf
странице справки для деталей.источник