Browse Source

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

Ask Solem 9 years ago
parent
commit
5447aa9063
1 changed files with 7 additions and 2 deletions
  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
 fi
 
+origin_is_runlevel_dir () {
+    set +e
+    dirname $0 | grep -q "/etc/rc.\.d"
+    echo $?
+}
 
-# May be a runlevel symlink (e.g. S02celeryd)
-if [ -L "$0" ]; then
+# Can be a runlevel symlink (e.g. S02celeryd)
+if [ $(origin_is_runlevel_dir) -eq 0 ]; then
     SCRIPT_FILE=$(readlink "$0")
 else
     SCRIPT_FILE="$0"