FHS 3.0中共享数据存储在哪里?

FHS 3.0中共享数据存储在哪里?

我正在开发一个符合 FHS2 的应用程序,用于将数据存储在$sharedstatedir(ie $(prefix)/com,eg /usr/local/com) 中。

这个目录不再是在FHS 3.0中,似乎我们需要开始使用

  • /var/lib,它应该存储

    可变状态信息

    或者更详细地说,

    与应用程序或系统有关的状态信息。状态信息是程序在运行时修改的数据,并且属于一台特定主机。

    或者

  • /var/local,它应该存储

    变量数据为/usr/local

    (没有提供更多有关 的信息/var/local。)

我们应该使用其中哪一个?

/var/lib额外问题: /是否有一个变量/var/local,类似于sharedstatedir我们应该使用的和朋友,或者我们应该简单地将路径硬编码到我们的 makefile 中?

答案1

你应该选择/var/lib

/usr/comFHS 2.3 或 FHS 3 中不存在。 FHS 2.3 飞速3.0

sharedstatedir是一个概念GNU 自动工具GNU 编码标准

GNU 和 freestandards.org 并不总是一致的。

你提到的问题出现在2006年邮件列表帖子。就红帽而言,结论是要使用/var/lib

prefix从技术上讲,如果您正在开发默认为 的开源项目/usr/local,则可以使用/var/local.但我不相信有人在实践中这样做。首先,请注意/var/local您的系统上可能是空的。对于两个,请注意,一旦您或任何人运行./configure更改prefix/usr,您就无法使用/var/local,唯一剩下的选项是/var/lib

相关内容