免责声明:我对Linux比较陌生。我讨论过把它放在SuperUser或ServerFault上,因为答案 要求将Linux解释为系统(而不是特定的编程问题),但是我从Java开发人员的角度对此感兴趣,并且我认为这是一个特定问题,因为我安装GlassFish会极大地影响我的Java配置,并最终影响应用程序配置。更不用说在其他网站上发布这个问题可能不会引起Java开发人员的任何关注,更多的是系统管理员,他们可能对Java的了解不足以完全权衡这一决定。
我正在尝试决定在哪里安装GlassFish,在我看来,我(实际上)有4个可行的选择:
/opt/glassfish/
/usr/local/glassfish/
/home/myUsers/glassfish/
(这是所有OGS文档在其示例中显示的内容)/home/ogs/glassfish
(作为自己的用户,类似于有时设置Apache Web服务器的方式)我想知道专业人士(考虑到Linux如何区别对待这些目录的性质,FHS等)以及每种方法的缺点。
我已经读过在opt/
下安装它会有好处/分区好处。但是,我通常会将第三方软件安装到usr/local/
,所以我对此作为一种策略有些不确定。
Oracle GlassFish Server(OGS)文档都证明(但从未完全建议)GlassFish安装在您的主目录(home/myUser/
)下。
然后再次,我已经读过安装守护进程类型的服务是相当普遍的(这是我想象的我将使用GlassFish - 我在那里开始它只有它作为他们自己的用户(home/ogs/glassfish/
)来进行日常维护或崩溃。
我肯定这个决定也受到我将如何使用GlassFish的影响,所以让我通过一些限制来限定这个问题:
如果这些没有提供足够的具体信息来帮助做出这个选择,请询问,我可以更具体。
我猜,当尘埃落定到一天结束时,我正在(或多或少)寻找一个矩阵,其中四个目录选项中的每一个(以及我省略的任何其他明显的选项)与各自的专业人员缺点
答案 0 :(得分:3)
还可以选择使用Linux发行版的软件包管理系统来安装Glassfish。例如,在Ubuntu上,您可以使用
安装它sudo apt-get install glassfish-appserv
并将其安装到程序包所有者认为应该安装的任何位置。
我自己倾向于避开上述选项,因为我喜欢自己控制Glassfish(或任何其他Java服务器/软件)的确切版本以及安装位置,但我只是想把它扔掉在那里,因为这是你可以做的事情之一。
现在提供您提供的各个选项:
<强>的/ opt /的glassfish / 强> 就我而言,这是首选方案。它将软件保存在常规Linux安装之外的单独目录中,并允许您提及的安装和分区优势。
<强>的/ usr /本地/的glassfish / 强> 我不喜欢这么多,因为/ usr / local通常由使用distro的软件包管理软件(apt / yum / etc)安装的第三方软件使用,而且大多数发行版都有bin等目录和lib在它下面。在它下面放置一个玻璃鱼目录会使它不合适。
此外,我更喜欢将系统目录与不使用发行版包管理工具的自定义软件分开。
/ home / myUsers / glassfish / , / home / ogs / glassfish
这2,我不推荐。
它们仅在大多数地方被描述,因为作者不想假设用户对这些盒子具有超级访问权限,在这种情况下,主目录将是您唯一保证拥有的目录。如果您拥有系统并正在管理它,则不适用这些限制。
请记住,主目录适用于特定用户。我总是建议使用具有所需权限的个人用户帐户管理服务器软件。将软件放在某人的主目录中意味着你要么
无论哪种方式,这都不是好的系统管理政策。
这里没有太多的Java视角,但如果你问我,就没有必要。
答案 1 :(得分:2)
关于先前的建议,一些权衡仍然存在:
希望这有帮助。