From 3787c32183570e9fa77284ba1ae62fc84e2f83fe Mon Sep 17 00:00:00 2001 From: John Crispin Date: Tue, 7 Jul 2015 13:47:23 +0000 Subject: sysctl: read settings from /etc/sysctl.d/*.conf This changes makes it possible to store custom settings in individual files inside the directory /etc/sysctl.d/. Signed-off-by: Stefan Tomanek SVN-Revision: 46239 --- package/base-files/files/etc/hotplug.d/net/00-sysctl | 9 ++++++--- package/base-files/files/etc/init.d/sysctl | 4 +++- package/base-files/files/etc/sysctl.d/local.conf | 1 + 3 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 package/base-files/files/etc/sysctl.d/local.conf (limited to 'package/base-files/files/etc') diff --git a/package/base-files/files/etc/hotplug.d/net/00-sysctl b/package/base-files/files/etc/hotplug.d/net/00-sysctl index 5d9da8a..7a71652 100644 --- a/package/base-files/files/etc/hotplug.d/net/00-sysctl +++ b/package/base-files/files/etc/hotplug.d/net/00-sysctl @@ -1,6 +1,9 @@ #!/bin/sh -if [ -f /etc/sysctl.conf ] && [ "$ACTION" = add ]; then - sed -ne "/^[[:space:]]*net\..*\.$DEVICENAME\./p" /etc/sysctl.conf | \ - sysctl -e -p - | logger -t sysctl +if [ "$ACTION" = add ]; then + for CONF in /etc/sysctl.conf /etc/sysctl.d/*.conf; do + [ ! -f "$CONF" ] && continue; + sed -ne "/^[[:space:]]*net\..*\.$DEVICENAME\./p" "$CONF" | \ + sysctl -e -p - | logger -t sysctl + done fi diff --git a/package/base-files/files/etc/init.d/sysctl b/package/base-files/files/etc/init.d/sysctl index 36e29ea..2dfbaf7 100755 --- a/package/base-files/files/etc/init.d/sysctl +++ b/package/base-files/files/etc/init.d/sysctl @@ -3,5 +3,7 @@ START=11 start() { - [ -f /etc/sysctl.conf ] && sysctl -p -e >&- + for CONF in /etc/sysctl.conf /etc/sysctl.d/*.conf; do + [ -f "$CONF" ] && sysctl -p "$CONF" -e >&- + done } diff --git a/package/base-files/files/etc/sysctl.d/local.conf b/package/base-files/files/etc/sysctl.d/local.conf new file mode 100644 index 0000000..891da73 --- /dev/null +++ b/package/base-files/files/etc/sysctl.d/local.conf @@ -0,0 +1 @@ +# local sysctl settings can be stored in this directory -- cgit v1.1