процесс не использует новую конфигурацию открытого файла, которую я установил?

У меня есть процесс, который работает как golden пользователь, и я пытаюсь увеличить ограничение на открытие файла для этого пользователя, чтобы весь процесс, запускаемый этим пользователем, должен использовать эти настройки. Я изменил лимиты на файл ниже, и изменения не влияют:

 /etc/security/limits.conf: * soft nofile 65535 * hard nofile 100000 

Я изменил настройки для всех пользователей, изменив ограничения на * wildcard, как показано выше. Теперь я начал свой процесс как золотой пользователь, и я выполнил команду ниже cat, и я вижу, что он использует 8092 качестве открытых файлов, поэтому я не уверен, почему мои изменения не влияют.

 golden@machineA:~$ cat /proc/1442/limits Limit Soft Limit Hard Limit Units Max cpu time unlimited unlimited seconds Max file size unlimited unlimited bytes Max data size unlimited unlimited bytes Max stack size 8388608 unlimited bytes Max core file size unlimited unlimited bytes Max resident set unlimited unlimited bytes Max processes 483036 483036 processes Max open files 8092 8092 files Max locked memory 65536 65536 bytes Max address space unlimited unlimited bytes Max file locks unlimited unlimited locks Max pending signals 483036 483036 signals Max msgqueue size 819200 819200 bytes Max nice priority 0 0 Max realtime priority 0 0 Max realtime timeout unlimited unlimited us 

Я использую ящик Ubuntu 14.04. Любая идея, что здесь не так, и как я могу убедиться, что весь процесс, который начинается с « golden пользователя», использует новую конфигурацию открытого файла? Я думаю, что есть место, где 8092 жестко запрограммировано, из-за чего оно не отменяет это значение.

 cat /proc/sys/fs/file-max 6145946 

One Solution collect form web for “процесс не использует новую конфигурацию открытого файла, которую я установил?”

/etc/limits – это время входа в систему. Изменение там применяется, когда пользователь входит в систему, а не когда процесс запускается. Конфигурация для запуска процесса отсутствует. Процесс наследует пределы его родителя.

Обратите внимание, что процесс всегда может выбрать, чтобы снизить его пределы. Если вы запустите сеанс входа в систему и подтвердите более высокие лимиты, запустив ulimit -a в оболочке и запустив процесс в этой оболочке , а ограничения процесса заканчиваются ниже, это означает, что процесс снижает свои пределы. Если это так, вам придется изучить конфигурацию программы, чтобы увидеть, можете ли вы предотвратить это.

  • Systemcrash suexec forkbomb.sh ulimits
  • В чем разница между установкой пределов открытых файлов в файле /etc/sysctl.conf vs /etc/security/limits.conf?
  • «Ulimit -m» не работает на (современном) Linux?
  • Буферизованные файлы ограничены размером 1 ГБ
  • О пользователе ulimit / setrlimit и cgroup
  • ulimit logging?
  • Как сохранить настройки ulimit в OSX Yosemite?
  • Как правильно решить эту проблему памяти?
  • Ограничить использование памяти для одного процесса Linux
  • Включить массивный одновременный SSH на один сервер
  • Максимальное количество открытых файлов, необходимых разъяснений
  • Linux и Unix - лучшая ОС в мире.