/etc/security/limits.conf не применяется

/etc/security/limits.conf не применяется

У меня есть /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.

решение1

https://superuser.com/questions/1200539/cannot-increase-open-file-limit-past-4096-ubuntu/1200818#_=_

По-видимому, начиная с Ubuntu 16 появился баг.

По сути:

  1. Отредактируйте /etc/systemd/user.confдля мягкого предела и добавьте DefaultLimitNOFILE=1048576.
  2. Отредактируйте /etc/systemd/system.confдля жесткого ограничения и добавьте DefaultLimitNOFILE=2097152.

Заслуга в этом принадлежит@mkasberg.

решение2

Рекомендуетсядля создания /etc/systemd/*.d/каталогов вместо редактирования /etc/systemd/system.confи /etc/systemd/user.confнапрямую.

  1. Создайте новый файл /etc/systemd/system.conf.d/limits.confсо следующим содержимым:

    [Manager]
    DefaultLimitNOFILE=1048576:2097152
    DefaultLimitNPROC=262144:524288
    
  2. Запуск systemctl daemon-reexecот имени root.

  3. Выйдите из системы и войдите снова.

  4. Проверьте новые ограничения с помощью ulimit -aили ulimit -nи ulimit -uдля максимального количества открытых файлов и максимального количества процессов соответственно.

Обратитесь кsystemd-system.confстраница руководствадля получения подробной информации.

Связанный контент