我什么时候应该在一个文件夹或另一个文件夹中安装?每个人都有利弊吗?是否与风味历史有关(Solaris vs Linux或Red Hat vs Ubuntu)?
解决方法
> / bin& / sbin用于操作系统的重要程序,sbin仅供管理员使用;
> /usr/bin& /usr/sbin用于非关键程序,sbin仅供管理员使用;
> / var用于程序的生活数据.它可以是缓存数据,假脱机数据,临时数据(除非它在/ tmp中,每次重启时擦除)等;
> /usr/local用于本地安装的程序.通常,它承载遵循标准但未针对操作系统打包的程序,而是由管理员手动安装(例如使用./configure&& make&& make install)以及管理员脚本;
> / opt适用于未打包且不符合标准的程序.您只需将所有库与程序放在一起即可.它通常是一个快速的&肮脏的解决方案,但它也可以用于由您自己制作并希望具有特定路径的程序.您可以在其中创建自己的路径(例如/ opt / yourcompany),在这种情况下,建议您将其注册为标准路径的一部分;
> / etc不应包含程序,而应包含配置.
如果您的程序特定于服务提供的服务,/ srv也可以是他们的好位置.例如,我更喜欢使用/ srv / www代替网站而不是/ var / www来确保目录只包含我自己添加的数据,而不包含任何来自软件包的数据.
分布之间存在一些差异.例如,当Debian / Ubuntu系统没有时,RedHat系统使用libexec目录.
FHS主要由Linux发行版使用(我实际上并不知道任何其他真正符合它的操作系统).其他Unix系统不遵循它.例如,BSD系统倾向于将/usr/local用于打包程序,而Linux则不然. Solaris具有非常不同的标准路径.