我有一个项目,其中包含一堆不同的文件(如下所列)。我正在为其创建一个安装脚本,并希望确保从 UNIX 层次结构的角度来看它们都位于正确的位置。
- 主要脚本完成了大部分提升工作。
- 有一个脚本可以以正确的方式启动特定的内核模块。
- [以上两个脚本都是由 systemd 中的 .service 文件在启动时启动]
- 上面提到的内核模块使用了几个文件系统(只是 .bin 文件)
- 需要有一个可写访问(至少是主脚本)的目录来保存程序当前正在运行的文件。这不是暂时的,需要在启动后持续存在。
我在 Twitter 上询问并收到了从 /opt/pishift、到 /usr/local/share、到 ~/.pishift/、到 /usr/local/bin、到 ~/pishift 或 /etc/pishift 的选项。
主脚本不需要由用户运行,因为它将在启动时由 systemd 启动 - 所以我认为这意味着我不应该将它放在 /usr/local/bin 中,因为那样它就在他们的道路。
如果您正在寻找有关该问题的更多背景信息,该项目位于此处:https://github.com/tomhartley/pishift
答案1
最好的办法是尝试找到您的软件适合的位置FHS。由 systemd 运行让我认为最好的地方是 /opt。