首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Linux中存储程序信息的位置和方式

在Linux中存储程序信息的位置和方式
EN

Stack Overflow用户
提问于 2011-10-08 17:56:01
回答 4查看 1.6K关注 0票数 5

我对Linux是个新手,我只会摆弄它,但现在我想让我的Java程序在Linux上运行……

我在互联网上快速浏览了一下,找到了一份目录及其描述的列表。/usr/lib似乎是我存储程序信息的最好地方,但我刚刚在我的VirtualBox虚拟机上查看了一下,似乎我无法在那里写东西,即使拥有根权限。因此,如果有人能为我指明正确的方向,那就太好了。

我还注意到Linux有它自己的“软件中心”,我担心我对这一切的看法可能是错误的,所以如果有人愿意提供一个,那么在Linux上编程的一些介绍可能会有所帮助!

提前感谢

PS My Virtual Machine是一个Ubuntu发行版

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-10-08 18:02:33

不仅Linux,而且任何与POSIX兼容的系统(包括BSD、Solaris,甚至Mac )的文件系统结构在FHS中都是标准化的。特别是Ubuntu,看看ubuntu-java团队的Debian policy for Javapackaging guide

如果您程序是以交互方式运行的,它应该将信息(如数据库和设置)存储在$HOME/.your-program-name (或$HOME/.config/your-program-name)中。如果你的程序是一个系统服务,它应该将它的信息存储在/var/lib中。您还可以在/etc/your-program-name中安装默认配置。

二进制文件是完全不同的,它们的位置前缀应该是可配置的。要充分利用软件中心及其依赖项/更新机制,请对软件执行package操作。如果打包,这些二进制文件(以及随附的库)将进入/usr/树,如果手动安装,将进入/usr/local/。无论前缀是什么,二进制文件放入bin (即/usr/bin),库文件放入lib32/lib64,其他数据放入share

如果你不想打包你的程序,也不想遵循FHS强加的结构(但你真的应该这样做),另一种选择是将代码和其他对象放入/opt/your-program-name中。注意,您的程序生成和操作的(可变)数据仍然应该放在$HOME/.your-program-name(交互式)或/var/lib/your-program-name(服务)中。

票数 5
EN

Stack Overflow用户

发布于 2011-10-08 17:59:23

将其存储在运行该程序的用户的主目录下-在一个隐藏目录中(前面有点),例如:.program-data。它的最短路径是:~/.program-data,完整路径取决于操作系统的发行版-通常是/home/user name/.program-data

票数 5
EN

Stack Overflow用户

发布于 2011-10-08 18:04:00

存储应用程序的最简单位置是主目录。您可能希望为服务创建一个用户和单独的主目录。

但是,听起来您好像是在用Java编写命令行或GUI工具。存储应用程序的一个常见位置是在bin目录下,如/usr/local/bin/home/myuser/bin lib通常用于应用程序加载的共享库。(Java不使用它们)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7696047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档