Linux 中的程序数据文件夹

ali*_*ali 5 linux directory ubuntu application-data organization

这是一个更笼统的菜鸟问题。我正在 Linux(更准确地说是 Ubuntu)中开发一个小应用程序,此时我有一个可执行文件、一个共享库(.so)、一个配置文件 (.conf),其中包含一些可供应用程序读取的设置一开始,一个数据文件夹,其中包含要在应用程序生命周期中使用的图像和其他资源(也可以修改、删除的资源),当然,我需要一些日志和消息文件(现在我正在使用syslog) .

所以,我的问题是,当应用程序安装在客户端的计算机上时,这些应用程序中的每一个都应该存储在哪里?在 Linux 中组织所有应用程序文件的标准方法是什么?在 Windows 上,所有东西通常都可以在 C:\Program Files\(App Folder) 中找到,但在 Linux 上,看起来更多(或更少)有组织。你能给我一些关于这个问题的建议吗?

Bas*_*evs 3

程序数据过去存储在用户主目录中以点为前缀的文件夹中。现代 Linux 发行版倾向于使用 ~/.config/program_name 文件夹。

对于分发后不会被修改的所有文件,遵循Linux 标准

  • ~/.config/program_name 用于用户特定数据,通用数据位于 /usr/share,二进制文件位于 /usr/bin,共享库位于 /usr/lib 等。日志通常位于 /var/log 下,但可能就足够了记录到syslog,即系统日志。 (3认同)