如何组织/选择?

如何组织/选择?

我想将手工制作的脚本放置在其常规位置和文件夹结构中。它当前位于/opt/chkobm/chkobm,但这似乎是一个不好的做法,因为它需要$PATH包含通配符路径 ( /opt/*/)

TLDP(“Linux 文件系统层次结构”部分):

用户调用的程序位于/opt/'package'/bin目录下。

首先,对于放置此类文件的位置是否存在一致的规则? (/usr/bin在我看来这是一个可行的替代地方)其次,我应该将手工脚本放置到/opt/*/bin/并将此路径导出到$PATH吗?

答案1

/usr/local/bin是惯用的地方。

根据Linux 文件系统层次结构:

最初的想法是在除 之外的每台计算机上/usr/local都有一个单独的(“本地”)目录,该目录可能只是从其他地方以只读方式安装。它复制了 的结构。如今,它被广泛认为是保存自编译或第三方程序的好地方。 /usr/local 层次结构供系统管理员在本地安装软件时使用。当系统软件更新时,它需要确保不被覆盖。它可用于可在一组主机之间共享但在 /usr 中找不到的程序和数据。本地安装的软件必须放置在 /usr/local 而不是 /usr 中,除非安装它是为了替换或升级 /usr 中的软件。/usr/usr/usr/usr/local

我倾向于依赖 Debian 定义的 FHS。 Debian 非常擅长执行标准。这就是他们必须要做的说说选择:

目录 /opt/bin、/opt/doc、/opt/include、/opt/info、/o​​pt/lib 和 /opt/man 保留供本地系统管理员使用。软件包可以提供旨在由本地系统管理员放置(通过链接或复制)这些保留目录的“前端”文件,但必须在没有这些保留目录的情况下正常运行。

...

通常,支持系统上的软件包所需的所有数据都必须存在于 /opt/ 中,包括要复制到 /etc/opt/ 和 /var/opt/ 中的文件以及 /opt 中的保留目录。

...

/opt/ 下面的目录结构由软件的打包者决定,但建议将软件包安装在 /opt// 中并遵循与 /opt/ 指南类似的结构。偏离此结构的一个有效原因是支持包的文件可能安装在 /opt//lib 或 /opt//bin 中。

Debian 的定义/usr/local与 TLDP 链接中的先前定义相同。

相关内容