在 Unix 中将 Mono 应用程序的文件放在哪里

Where to put Files for Mono Application in Unix

我正在编写一个 C# 应用程序(在 Windows 上的 Visual Studio 中),它将 运行 作为 Unix(Raspbian aka Debian)上的单声道应用程序。我是一个 Unix 菜鸟,虽然我已经阅读(嗯,略读)Linux Foundation Filesystem Hierarchy Standard,但我仍然不完全清楚我应该把我的应用程序需要的文件放在哪里。我有:

  1. 已编译的 C# 应用程序 (app.exe)。我想我会把它放在 /usr/bin 中,除了应用程序不是直接 运行(它由 "mono app.exe" 调用),所以也许 /usr/libexec 是更好的位置吗?
  2. 配置文件(可能不止一个)(app.1.conf、app.2.conf等)。如果它们不是特定于用户的,我认为 /etc/app(一个目录,而不是一个文件)将是这些的好地方。如果它们是特定于用户的呢? /home/?
  3. 日志文件(app.log)。似乎 /var/log 是正确的地方。

提前感谢您的意见。

您应该查看一个已经建立的 Mono 应用程序以供参考。例如让我们以 MonoDevelop 为例:

  1. exe 文件转到 /usr/lib/{appnameinlowercase}/bin/ ,但他们在 /usr/bin 中放置了一个启动器脚本,名为 {appnameinlowercase} ,便于从命令行启动(此脚本仅调用 exec mono YourAppName.exe)。

  2. 在 .NET 中,配置文件需要与可执行文件位于同一目录中,因此您可以将它们放在 /usr/lib/{appnameinlowercase}/bin 中,稍后方便使用, 将符号链接从 /etc/{appnameinlowercase}/.

  3. 正确,/var/log/{appnameinlowercase}/ 应该没问题。