我有一个Python脚本,其中make install
(默认为/usr/local/lib/python2.7/dist-packages/)选项可用。但是在脚本正常使用期间,该脚本还会生成具有用户特定可变数据的文件。在我看来,我不应该将编译后的脚本文件与数据结合起来。在这种情况下,存储软件数据的传统默认位置是什么?
答案 0 :(得分:3)
总结Filesystem Hierarchy Standard:
不可变的独立于架构的数据应该放在/usr/share
或/usr/local/share
中。可变数据应该放在用户的主目录中,如果它是特定于用户的(XDG在此提供更多指导),或者在/var
中,如果它在整个系统范围内(这通常需要一个组拥有的目录和文件,以及一个setgid应用程序,以允许写入共享文件)。
/usr/share
和/usr/local/share
通常有一个有点镜像/usr/lib
和/usr/local/lib
的结构;我不了解Python,但Perl有一个模块File::ShareDir,它可以帮助模块在与安装模块的目录对应的共享目录中安装和访问数据。
并且不要忘记其他选项:只需询问用户数据应该去哪里。