在GNU / Linux上保存配置/数据文件的位置?

时间:2017-12-14 17:58:09

标签: linux gnu

我发现,通过将它们移动到/ bin文件中,我可以轻松地执行自己的程序。但是我也看到,那里的很多程序只包含一个文件,只执行一个简单的任务而不需要在文件中保存任何内容。

如果我想编写一个命令行程序,该程序还需要将其保存在文件中(例如存储播放器进度的基于文本的小游戏),程序应将其存储在其中#39 ; s数据?

Linux中有几个专用位置。我想知道哪个位置最适合,例如,需要数据的游戏,如图像文件和文本文件,以及需要存储播放器进度的游戏。

2 个答案:

答案 0 :(得分:3)

有很多地方可以保存配置/数据文件等:

  • /var(数据)
  • /usr(数据)
  • /etc (配置)
  • ~(config)
  • ~/.config(配置,通常代替~,因为它可以减少用户主目录中的混乱)。
  • 可能还有更多......

可以在上面的链接中找到有关顶级目录的各个子文件夹用途的深入描述。

我认为ad-hoc标准是将~/.config用于特定于用户的配置文件,/var用于执行期间生成的数据文件,/etc用于"静态&# 34;系统范围的配置。 /usr用于存储用户程序及其静态数据。

确实存在更多正式标准 - Filesystem Hierarchy Standard表示顶级目录的目的,而~/.configXDG的首选配置文件夹,似乎已经流行起来。

答案 1 :(得分:2)

另一个建议:~/.local/share通常更适合用户不应触及的应用程序数据。 ~/.config通常用于用户可修改的配置。

您还应该为$XDG_DATA_HOME使用适当的环境变量~/.local/share,为$XDG_CONFIG_HOME使用~/.config。有些用户喜欢将这些目录重新映射到其他位置。

相关问题