我培养了自己的文化,并了解了为我的项目构建 DEB 包的基础知识。我不清楚的是(到目前为止,在我遵循的指南中从未有人向我说明过)我的应用程序正常运行所需的附加文件应该放在哪个常规位置。让我解释一下。在我的项目文件夹中,我有一个 Makefile,它负责编译代码并提取可执行文件。当我运行应用程序时,它会读取和写入项目文件夹根目录中“数据”文件夹中的一些文件。目前,我能够通过将“数据”文件夹定位在“/usr”内来构建 DEB 包,其必然结果是必须更改此文件夹的所有者才能在没有 root 权限的情况下运行应用程序。所以最终,我想知道处理这种情况的最合适方法是什么,可能避免必须更改文件夹的所有者并能够以普通用户身份启动应用程序。
答案1
如果data
你只需要阅读,则应将其/usr/share/package_name/
放在Debian 政策手册(Ubuntu 使用类似的文档,恕我直言,是同一个文档),它指的是文件系统层次结构标准。这适用于图像、帮助文件、3D 模型、UI 定义等。
对于需要写入的内容,理想的地方是~/.your_package
。这可以用于缓存、用户设置,有时甚至是用户数据。