태그 보관물: ulimit

ulimit

start-stop-daemon으로 ulimits를 작동 시키십시오 limits.conf. 이것은 쉘에서 직접 실행할 때

init.d사용하여 앱을 시작 하는 스크립트가 있습니다 start-stop-daemon --chuid SOME_SYSTEM_USER. 즉, 앱은 루트가 아닌 다른 사용자로 실행됩니다.

문제는 앱에 특수 제한 설정 (즉 ulimit -n 64000)이 필요 하다는 것입니다 limits.conf. 이것은 쉘에서 직접 실행할 때 아주 잘 작동합니다 : su - SOME_SYSTEM_USER+ 쉘에서 앱 시작.

그러나 start-stop-daemon --chuidfrom을 실행할 때 /etc/init.d이러한 제한은 무시됩니다. 그런 다음 앱이 작동하지 않습니다.

설정을 강제로 적용 start-stop-daemon하려면 어떻게합니까 ulimit?


데비안 스퀴즈, 2.6.32-5-686 # 1 SMP 5 월 5 일 토요일 01:33:08 UTC 2012 i686 GNU / Linux



답변

현재로서는 할 수 없습니다. limits.conf(5)의 구성이며의 구성에 pam_limits(8)따라 PAM 스택에 의해 활성화됩니다 /etc/pam.d. 그러나 start-stop-daemon(8)init.d 스크립트에서 시작된대로 PAM 스택을 통과하지 않으므로 이러한 종류의 설정은 적용되지 않습니다.

데비안 버그 # 302079 에는의 제한 설정을 활성화하는 패치가 포함되어 start-stop-daemon(8)있지만 버그는 2005 년 이후에 열려 있으며 패치는 아직 병합되지 않았습니다.

이상적이지는 않지만 현재 AFAIK에서 권장하는 방법은 ulimitinit.d 스크립트에 호출 을 추가하는 것 입니다.


답변

upstart 스크립트에서 ‘limit’명령을 사용할 수도 있습니다.

/etc/init/foo.conf 파일에서 다음 줄을 추가하십시오 :

limit nofile 64000 64000

첫 번째 64000은 소프트 한계이고 두 번째는 하드 한계입니다.

자세한 내용은 여기를 참조하십시오 :
http://upstart.ubuntu.com/cookbook/


답변