Explorar o código

[init.d] Respect symlink to /etc/rc*.d

Ask Solem %!s(int64=9) %!d(string=hai) anos
pai
achega
5447aa9063
Modificáronse 1 ficheiros con 7 adicións e 2 borrados
  1. 7 2
      extra/generic-init.d/celerybeat

+ 7 - 2
extra/generic-init.d/celerybeat

@@ -29,9 +29,14 @@ if [ $(id -u) -ne 0 ]; then
     exit 1
     exit 1
 fi
 fi
 
 
+origin_is_runlevel_dir () {
+    set +e
+    dirname $0 | grep -q "/etc/rc.\.d"
+    echo $?
+}
 
 
-# May be a runlevel symlink (e.g. S02celeryd)
+# Can be a runlevel symlink (e.g. S02celeryd)
-if [ -L "$0" ]; then
+if [ $(origin_is_runlevel_dir) -eq 0 ]; then
     SCRIPT_FILE=$(readlink "$0")
     SCRIPT_FILE=$(readlink "$0")
 else
 else
     SCRIPT_FILE="$0"
     SCRIPT_FILE="$0"