[PATCH] fff-hoods: remove dependency to /tmp/started

mail at adrianschmutzler.de mail at adrianschmutzler.de
Sa Jan 20 23:41:49 CET 2018


Hallo Tim,

ich habe selbst immer wieder überlegt, hier mit einem Lockfile zu arbeiten.

Allerdings besteht hier das Risiko, dass das Skript nie mehr läuft, wenn das
Lockfile aus irgendeinem Grund nicht mehr gelöscht wird. Aus diesem Grund
habe ich mich immer dagegen entschieden, da es das tmp/started ja eh gibt
und das in meinen Augen sicherer ist.

Deshalb bin ich tendenziell eher gegen den Patch.

Frage: Ist /var RAM oder Flash? Nicht das wir hier wieder aus Versehen auf
dem Flash rumschreiben... Falls Flash wäre zudem ein vergessenes Lock-File
permanent.

Grüße

Adrian

> -----Original Message-----
> From: franken-dev [mailto:franken-dev-bounces at freifunk.net] On Behalf
> Of Tim Niemeyer
> Sent: Samstag, 20. Januar 2018 23:04
> To: franken-dev at freifunk.net
> Subject: [PATCH] fff-hoods: remove dependency to /tmp/started
> 
> The dependency was only to avoid duplicated script instances.
> Therefore, this patch implements a solution without the need to depend on
> the /tmp/started file.
> 
> Signed-off-by: Tim Niemeyer <tim at tn-x.org>
> ---
> 
>  src/packages/fff/fff-hoods/Makefile                         | 2 +-
>  src/packages/fff/fff-hoods/files/usr/lib/micron.d/fff-hoods | 2 +-
>  src/packages/fff/fff-hoods/files/usr/sbin/configurehood     | 7 +++++++
>  3 files changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/src/packages/fff/fff-hoods/Makefile b/src/packages/fff/fff-
> hoods/Makefile
> index 11ab6d1..1a616ff 100644
> --- a/src/packages/fff/fff-hoods/Makefile
> +++ b/src/packages/fff/fff-hoods/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
> 
>  PKG_NAME:=fff-hoods
> -PKG_VERSION:=0.0.1
> +PKG_VERSION:=2
>  PKG_RELEASE:=1
> 
>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
> diff --git a/src/packages/fff/fff-hoods/files/usr/lib/micron.d/fff-hoods
> b/src/packages/fff/fff-hoods/files/usr/lib/micron.d/fff-hoods
> index 39e800e..ca8d798 100644
> --- a/src/packages/fff/fff-hoods/files/usr/lib/micron.d/fff-hoods
> +++ b/src/packages/fff/fff-hoods/files/usr/lib/micron.d/fff-hoods
> @@ -1 +1 @@
> -*/5 * * * * [ -f /tmp/started ] && /usr/sbin/configurehood
> +*/5 * * * * /usr/sbin/configurehood
> diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> index 2aaa245..e14995b 100755
> --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> @@ -1,5 +1,12 @@
>  #!/bin/sh
> 
> +lockfile="/var/lock/${0##*/}.lock"
> +if ! lock -n "$lockfile"; then
> +	echo "Only one instance of $0 allowed."
> +	exit 1
> +fi
> +trap "lock -u \"$lockfile\"" INT TERM EXIT
> +
>  . /usr/share/libubox/jshn.sh
>  . /lib/functions/fff/keyxchange
>  . /lib/functions/fff/network
> --
> 2.11.0
> 
> --
> franken-dev mailing list
> franken-dev at freifunk.net
> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net



Mehr Informationen über die Mailingliste franken-dev