Linux FHS:/ srv与/ var……我在哪里放东西?


55

我的Web开发经验始于Fedora和RHEL,但我正在过渡到Ubuntu。在Fedora / RHEL中,默认似乎使用/ var文件夹,而Ubuntu使用/ srv。

是否有任何理由要一个使用另一个,并且在哪里拆分行?(这让我非常困惑,直到最近,我还以为/ srv是服务器/服务的/ svr)

我主要关心的是两种类型的文件夹

  • 默认的www和ftp目录
  • 特定的应用程序文件夹,例如:
    1. samba共享(可能分组在smb文件夹下)
    2. Web应用程序(这些应用程序应该放在www文件夹中,还是可以做一个符号链接到其自己的目录,例如“ ___ / www / wordpress”->“ / srv / wordpress”)

我正在寻找最佳方法,行业标准以及定性的理由,以证明哪种方法是最佳的(或者至少是为什么偏爱这种方法)。


也许这另一个问题可以帮助你:serverfault.com/questions/102569/...
ptman

Answers:


51

这源于LSB所说的“ /var包含可变数据文件。其中包括假脱机目录和文件,管理和日志记录数据以及临时和临时文件。” 而是说/srv:“ /srv包含此系统提供的特定于站点的数据。”

SuSE是我使用的第一个Disto,它保留了webroot的使用权/srv-通常是Debian / Ubuntu / RHEL的使用/var/www-但也请注意,如果您使用yum或apt安装Web应用程序,则它们最终可能会出现在/usr/share。另外,Fedora包装指南还指出,“一旦由用户安装和配置,/srv该包装就可以用作数据存储位置。该包装绝对不能开箱即用”。

出于平衡考虑,我会说/var/www-或您可以通过对/var/www进行符号链接来实现两者/srv/www。我知道在我建立的oracle RDBMS系统上,我经常创建/u01 /u02etc作为与之的符号链接/home/oracle。这样做的原因是,许多DBA期望在/ u01中找到东西,而其他许多期望/home/oracle。一般Sysadmin管理员都可以这样说-有些人会本能地进入/var/www,有些/srv/www像我这样的人会用grep的apache配置DocumentRoot

希望这为您提供一些指导。


6
我通常将“服务的”资源放在/ srv下,主要是出于存储和备份的原因。通过这种方式提供的数据可以位于与系统托管文件(例如apt缓存和日志)不同的存储池中,并且在需要时更容易容纳更多空间。
盖洛斯'16

3
使用/srv分区时,你必须安装在单独的驱动器是非常有用的/var,并/srv和不希望你的日志影响您的IO。值得一提的是,Apache也附带了Directory指令/srv,只是将它们注释掉了。
varlogtim
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.