在具有多个pid的sysvinit上为/ var / lock / subsys命名约定

在这个来自Red Hat的技巧和诀窍文章中 ,有人说:

当通过初始化脚本启动服务时,会在/ var / lock / subsys /目录中使用与init脚本相同的名称来接触文件。 当服务停止时,该文件被删除。 只要文件名与init脚本相同,这个文件的内容对于本文的范围就不重要了。

但是,某些服务可能需要多个锁。 例如, 其中一个GitLab初始化脚本需要一个独angular兽锁和一个sidekiq锁:

# The PID and LOCK files used by unicorn and sidekiq UPID=$APP_PATH/tmp/pids/unicorn.pid ULOCK=/var/lock/subsys/unicorn SPID=$APP_PATH/tmp/pids/sidekiq.pid SLOCK=/var/lock/subsys/sidekiq 

如果开发者使用/var/lock/subsys/gitlab-unicorn/var/lock/subsys/gitlab-sidekiq吗? 或者可能是一个目录/var/lock/subsys/gitlab/

可以通过某种方式避免这个问题使用一个单一的locking文件?

这种情况的最佳做法是什么?