Date: Tue, 30 Apr 2013 01:33:44 +0200 From: Raphael Eiselstein <rabe@uugrn.org> To: freebsd-rc@freebsd.org Subject: How to set resource limits (ulimit) per service with /etc/rc.subr and /etc/rc.conf Message-ID: <20130429233344.GA4769@ma.sigsys.de>
next in thread | raw e-mail | index | archive | help
--Qxx1br4bt0+wmkIi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi everyone, we have some generic parameters for rc-scripts like=20 ${name}_program ${name}_chroot ${name}_flags ${name}_nice ${name}_user any many more. I'm looking for a way to configure different ulimits per service. It seems we have nothing about "ulimit" somewhere in /etc. I'd like to have a unique way to configure resource limits, hard and soft limits. Resource limits can be set within a script for the current process by=20 "ulimit [-HSabcdflmnpstuvw] [limit]" but not as a parameterised wrapper like "nice" or "chroot" or "su", so prepeding just another "ulimit" wrapper seems not to be an option. Is there a unique way to have resource limits per service? I didn't find any. AFAICS we have two options handling this: #1 writing a /bin/sh wrapper prepeding ${_doit} containing ulimit commands #2 having (someone) to build up a generic binary like nice(1) getting limit-parameters by commandline before execve'ing the final command, e.g.= =20 limitsh -Hv 20480 -Sv 10240 -n 300 -c command args Problem: shells shoud implement "-c command args" and ulimit uses -c for coredumpsize in 512byte blocks. To get around this: -Hc and -Sc are=20 hard/soft limits to corefilesize, a single "-c" is always the command-string like in sh(1)=20 Any ideas? Did I miss something? Regards Raphael --=20 Raphael Eiselstein <rabe@uugrn.org> http://rabe.uugrn.org/ xmpp:freibyter@gmx.de | https://www.xing.com/profile/Raphael_Eiselstein = =20 GnuPG: E7B2 1D66 3AF2 EDC7 9828 6D7A 9CDA 3E7B 10CA 9F2D =2E........|.........|.........|.........|.........|.........|.........|.. --Qxx1br4bt0+wmkIi Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iEYEARECAAYFAlF/A1gACgkQnNo+exDKny15xgCdGu4JBVzlCEra1zFX6blcoGY2 QAIAmwb+rwyklz1BbZelAGLJEfDlUu9A =/jbn -----END PGP SIGNATURE----- --Qxx1br4bt0+wmkIi--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130429233344.GA4769>