Debian政策说
9.1.2特定于站点的程序
根据FHS的要求,程序包不得将任何文件放入/usr/local
,无论是通过将文件放入dpkg进行解压缩的文件系统归档中,还是通过在其维护程序脚本中对其进行处理。
没有针对的具体禁止/opt
。政策还增加了
所有安装的文件和目录的位置都必须符合文件系统层次结构标准(FHS)2.3版,以下所述除外,除非这样做会违反Debian Policy的其他条款。
和文件层次标准说
该目录/opt/bin
,/opt/doc
,
/opt/include
,/opt/info
,/opt/lib
,和
/opt/man
保留给本地系统管理员使用。
再往下走
发行版可以在中安装软件/opt
,但在
未经本地系统管理员同意的情况下,不得修改或删除由本地系统管理员安装的软件。
请注意,Policy是针对Debian本身的,但它通常对应于最佳实践建议。如果我正确阅读此书,后果是无法将二进制(deb)软件包安装到/usr/local
,但可以安装,/opt
只要不干扰sysadmin对空间的使用即可。
我个人认为,在/usr/local
或中包含deb软件包是一个坏主意/opt
。我不同意D4RIO的看法,他说:
有一个包的CouchDB为Debian(我的意思是,官方的),因此,如果您下载的其他,这是确定的,它必须安装在/opt
或/usr/local/bin
两种。
通常,您不希望安装与同一软件相对应的两个不同的deb软件包,并且如果它们实际上是相同的软件包名称,则dpkg仍然不允许这样做。非官方的Debian软件包通常作为官方软件包提供(但并非总是如此),其名称与官方软件包相同。您只需安装一个或另一个,而不是两个都安装。
就其价值而言,我认为放入deb软件包/opt
是个坏主意,而我最近看到的唯一一次出现在Google Chrome中。但是,Google并不总是遵循最佳做法。