diff options
Diffstat (limited to 'mk/rootfs/openrc/etc/init.d/sysctl')
-rw-r--r-- | mk/rootfs/openrc/etc/init.d/sysctl | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/mk/rootfs/openrc/etc/init.d/sysctl b/mk/rootfs/openrc/etc/init.d/sysctl new file mode 100644 index 0000000..a9faf59 --- /dev/null +++ b/mk/rootfs/openrc/etc/init.d/sysctl @@ -0,0 +1,28 @@ +#!/sbin/openrc-run +# Copyright (c) 2007-2008 Roy Marples <roy@marples.name> +# Released under the 2-clause BSD license. + +start() +{ + local conf= retval=0 err errs + + ebegin "Configuring kernel parameters" + eindent + + for conf in /etc/sysctl.conf /etc/sysctl.d/*.conf; do + if [ -r "$conf" ]; then + vebegin "applying $conf" + if ! err=$(sysctl -p "$conf" 2>&1 >/dev/null) ; then + errs="${errs} ${err}" + sysctl -e -p "${conf}" >/dev/null + fi + veend $? || retval=1 + fi + done + + eoutdent + if [ ${retval} -eq 0 ] && [ -n "${errs}" ] ; then + ewarn "Unknown keys:${errs}" + fi + eend $retval "Some errors were encountered: ${errs}" +} |