-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add rlimit configuration for programs #229
Conversation
- make it available in a Process
Perhaps I need to update another test somewhere? How are any of the setuid or setgrp areas of code tested without root privileges? |
Any idea on when this might get a review? I'm pretty sure it's generally useful, many have commented on wanting this feature on the list. |
Thanks for this pull request. The beta releases before 3.0 final will fix bugs but not add any new features. We will review this after 3.0 final is out. I would like this feature myself. |
this is a game stopper for me. see you later supervisord, hello runit. |
first check out circus: http://circus.readthedocs.org/en/0.8.1/ |
Even though i hare runit's config format, i think he has a point. |
This is also a game stopper for me. I Love how simple supervisor was, but I can't use it until it respects hard and soft file limits on the user to run as. |
get it in ! :) |
Anyone? |
I need this functionality badly! |
Hi all, == Relevant content of the supervisord conf: == == Relevant content of the runMyStuff.sh script : == And execute the following line to make sudo respect the limits.conf file: Downsides:
Cheers, |
I found a better workaround (I think): Where ulimit -n 80000 is an example of a pre-run command and nc -l 8000 is the example daemon. What happens is this:
Result: One process controlled by supervisor. (supervisor-->your daemon) P.S: you can have any number of the pre-commands, separated by semicolons. The daemon has allways be started by exec. P.P.S: user needs to be root if you want to increase limits. |
I switched to |
me too |
Yeah, can't blame you. I'm aslo looking to switch. |
Hi all, Thanks, |
I'm assuming this is never going to be merged? Would be nice to know for sure. Moving to either circus or runit in the meantime... |
If I understand correctly, the implementation of supervisor is such that a process can be started as a non-root user, with more privileges than that user is allowed - bypassing pam, limits.conf, etc. If so, this is an insane design and I'll be advising my company to run the hell away. Even if this particular problem is fixed, I'll have second thoughts about using supervisor: developers who do not understand security or don't take it seriously are likely to continue creating security problems. |
I need this feature badly also, maybe time to take a look at circus? |
We moved to circus, which has it's own "idiosyncrasies". Now looking at systemd. :) |
After 4 years, will this PR be merged? |
I opened this PR 6 1/2 years ago, but at this point let's all stop bagging on this project and complaining about this PR. Many suitable alternative projects with active owners have emerged since. systemd has taken over the world, but here's a plug for the s6 supervision suite. I found it a joy to work with. |
Hi, I've used a hacked up supervisord for years with the options:
Which directs supervisor to call setrlimit to the values just after forking to launch the program. For RLIMITS with a soft and hard limit, I've just forced the 'min' value to both since most programs under supervisord are not equipped to call setrlimit on their own behalf.
I think this is generally useful, and I'd love to stop having to manually patch to get updates.
I ran all tests and had to run tests with root privileges to get the final tests to pas.
Let me know if I've abused any code or if any code style is not good.