linux – 将应用程序/ HTTP服务安装到“/ srv”?

我一直在与一个曾经将所有应用程序和HTTP服务(如 ApacheTomcat)安装到’/ srv’目录的团队合作.我怀疑主要是为了尽可能地将已安装的服务与操作系统分开.对于我自己的项目,我保留了这种做法.然而,随着时间的推移越来越多看起来这可能不是一个好主意:它阻止你使用 distribution特定的软件包(他们在该团队中的声誉很差,所以大多数都是自定义安装),我注意到了在尝试使用已经可用的厨师烹饪书时,我遇到了一些麻烦.

最近我很想转而使用特定于发行版的软件包,而不是尝试构建适合该目录结构的自定义安装.我想知道是否有任何我可能会忽略的东西.是否有任何充分的理由将所有内容放入’/ srv’目录或任何不使用分发特定包的正当理由?

我目前在堆栈中需要的是:nginx,Tomcat(Oracle JDK)和MongoDB.

解决方法

安装第三方软件的FHS兼容路径不是/ srv,而是/ opt.
检查 herehere.

关于是否使用预编译包,您有两种选择:

>如果您信任供应商有关安全更新和错误修正的信息,请使用它们.我愿意,他们肯定比你的公司有更多的人力和资源来完成这项任务.您可以继续使用操作系统默认存储库和打包基础结构.您可以使用供应商提供的任何版本(以及向后移植的修复程序).
>不要使用它们,并修补你自制的安装every time a new vulnerabilitymade public.你需要维护你的私人存储库(好吧,你也可以每次手动安装所有东西).您可以使用该软件的更新版本.

如果您只需要维护5-10台机器,那么将所有内容放在/ opt下是可行的,但是如果你维持一个超过几百个的农场,你就会做错了吗?

在我看来,专业的方法是使用供应商提供的预编译包,除非有令人信服的理由不这样做.

相关文章

linux常用进程通信方式包括管道(pipe)、有名管道(FIFO)、...
Linux性能观测工具按类别可分为系统级别和进程级别,系统级别...
本文详细介绍了curl命令基础和高级用法,包括跳过https的证书...
本文包含作者工作中常用到的一些命令,用于诊断网络、磁盘占满...
linux的平均负载表示运行态和就绪态及不可中断状态(正在io)的...
CPU上下文频繁切换会导致系统性能下降,切换分为进程切换、线...