为所有用户安装软件和可执行文件的位置


Answers:


19

通常,您不必尝试手动安装任何东西。在几乎所有情况下,您都会找到.deb软件包。如果没有一个Google提供建议(例如如何在Ubuntu中安装Oracle JDK)。如果这是您自己的软件,请查看《Ubuntu包装指南》,以获取有关如何正确地将内容放入Ubuntu的帮助。

如果仍然必须执行此操作,请将二进制文件放在/ opt / myapp中,然后将可执行文件与链接ln -s /opt/myapp/myappbinary /usr/local/bin/myappbinary。如果您想进一步了解该主题man hier,请在终端中输入。在那里说明了/ usr / bin/ usr / local / bin之间的区别。无论如何,两个路径都在$ PATH环境变量中。这意味着您放置在其中的任何二进制文件都可以由任何人提供,只要给出二进制文件的名称即可(而不是完整路径)。因此,使用上面的示例,您可以使用运行程序,myappbinary而不必给出完整的路径/opt/myapp/myappbinary


1
将其放入/ opt的目的是什么,尤其是如果您只是要将其符号链接到/ usr / local时?
psusi

如果我希望系统的所有用户都可以使用该应用程序,我应该符号链接到/ usr / bin而不是/ usr / local / bin吗?
孟梦

4
@jiewmeng如果您看的man hier话,那里会看到所有解释。包括/ usr / bin和/ usr / local / bin之间的区别。简而言之:不要将任何符号链接到/ usr / bin /。@psusi原因是保持文件系统干净。如果您曾经重新安装计算机(或移至其他计算机/硬盘驱动器),则只需查看/ home,/ etc和/ opt目录即可。让我再重复一次:通常,除了在/ etc中编辑配置文件外,您通常不想在$ HOME之外执行任何操作。
mniess 2011年

7

/ usr是世界可读性,因此,其他用户可以运行该程序不会有问题。/ usr / local是您自己从源代码编译的应用程序的存放地。通过程序包管理器安装的程序在其他地方。我从未见过/ opt的任何用途,并且相信这只是80年代旧AT&T Sys V的遗留物。


/ usr / local / bin和/ usr / bin之间的区别是什么?如果我希望所有用户都可以访问该应用程序,是否可以将其放在/ usr / bin中?
孟梦

@jiewmeng,再次,本地版本是针对您自己从源代码编译的程序,而不是通过程序包管理器进行安装。它与用户和访问无关。
psusi 2011年

0

根据linux风格的不同,手动安装东西的首选位置可能会有所不同。如果您手工操作,请按照自述文件的建议进行操作。

如果您创建一个新用户,而您的旧用户无需执行任何操作即可访问新程序,那么新用户也不会。

但是,您可以自由创建/ opt / bin并将其包含在path中,但是为什么要这么做呢?甚至/ flip / flop / funky / bin。或从某处链接到目录,该目录已包含在PATH中

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.