为什么我的包被安装到 /opt?

10 linux fhs debian directory-structure

不久前,我在我的 debian 机器上从源代码安装了 couchdb。它似乎安装没问题,一切正常。

几周后,我想使用 dpkg 从 .deb 升级和安装。现在一切似乎都已安装在/opt. 一切似乎都很好,但我真的不明白为什么它都安装在/opt. 它不觉得“平稳”当事情被直接安装到作为/usr/local/bin/etc/var/log。配置起来比我之前刚刚编辑安装在/etc/couchdb下的配置文件更麻烦

有人介意向我解释为什么安装 to/opt是“一件好事”,为什么这比以前的源安装更好?

我知道这是一个相当模糊的问题,但我只能胜任 Linux 而不是专家,也不了解安装到 /opt

Mik*_*kel 11

文件系统层次标准给出的定义:

  • /opt : 附加应用程序软件包
  • /usr/local :本地层次结构(供系统管理员在本地安装软件时使用)

我的阅读方式:

  • 标准系统应用程序应该进入/bin/usr/bin(暗示)
  • 第三方包应该进去 /opt
  • 只有/usr/local在系统管理员想要的情况下才应该安装一些东西

通过扩展,如果系统管理员使用dpkg或安装某些东西rpm,则/usr/local默认情况下不应进入。

所以它可以说是在做正确的事情。


Fah*_*tha 6

Debian 政策

9.1.2 站点特定程序

根据 FHS 的要求,包不得将任何文件/usr/local放入 .

没有这样的具体禁止/opt。政策还增加了

所有已安装文件和目录的位置都必须符合文件系统层次结构标准 (FHS) 2.3 版,但下述例外情况除外,并且这样做会违反 Debian 政策的其他条款。

文件层次结构标准

目录/opt/bin/opt/doc/opt/include/opt/info/opt/lib/opt/man保留供本地系统管理员使用。

然后再往下

发行版可以在 中安装软件 /opt,但未经本地系统管理员同意,不得修改或删除本地系统管理员安装的软件。

请注意,策略适用于 Debian 本身,但它通常对应于最佳实践建议。结果,如果我没看错的话,将二进制 (deb) 包/usr/local安装到/opt.

我个人的看法是,这是一个坏主意,有deb包在任一/usr/local/opt。我不同意 D4RIO 的说法:

Debian 有一个 Couchdb 包(我的意思是,官方),所以如果你下载了另一个,没关系,它必须安装在/opt/usr/local/bin中。

您通常不希望安装对应于同一软件的两个不同的 deb 包,如果它们实际上是相同的包名,dpkg 无论如何都不会允许。作为官方软件包提供的非官方 Debian 软件包通常(但不总是)与官方软件包具有相同的名称;你只安装一个,而不是两个。

就其价值而言,我认为将 deb 包放入/opt是一个坏主意,而且我最近看到的唯一一次发生在 Google Chrome 上。但是,Google 并不总是遵循最佳做法。


D4R*_*RIO 4

/opt适用于第三方软件。debian 有一个 couchdb 软件包(我的意思是官方的),所以如果您下载了另一个软件包,没关系,它必须安装在/opt/usr/local/bin中。