如何正确使用“/opt”中的应用程序?

如何正确使用“/opt”中的应用程序?

我正在使用 Ubuntu 14.04 LTS。我有时会将一些应用程序(例如xxx)复制到/opt文件夹中,以供其他用户帐户使用。然后启动它我使用:

 sudo /opt/xxx_folder/xxx

(当然,链接到/usr/local/bin/usr/bin等)来启动它;

问题:我将应用程序的结果/项目存储到我的本地文件夹(如/home/myuser/xxx_data)。当然,该文件夹及其数据xxx_data属于root(而不是myuser)。因此,每次我想使用另一个应用程序(而不是root.

问题:有没有办法安装应用程序xxx/opt这样我就不需要以 root 身份启动它们?

或者也许您会看到另一种方法来解决这个“root 用户问题”?

答案1

即使您只是将其复制到/opt,只需chmod 755在目录和可执行文件上即可允许每个人运行它。至于输出,一个好的方法是让文件夹归特定组所有,并将应该能够修改该组的任何用户添加xxx_data到该组,如下所示(以 root 身份运行):

groupadd xxx_data
chown root:xxx_data /path/to/folder
chmod 770 xxx_data /path/to/folder
usermod -aG xxx_data <username> #Repeat for each user

您还需要chmod 755在主目录上运行,或者移动xxx_data到其他地方。

您可能需要注销并重新登录才能更新权限。

答案2

通过 apt-get(或 aptitude)安装的程序几乎总是会正确地位于 /usr 中。但是从源代码编译并进行安装的程序通常会出现在 /usr/local/bin、/usr/local/lib 等位置,并且您可能会遇到问题,因为 Debian/Ubuntu 中的用户安装路径是 / usr 而不是 /usr/local。

从源代码编译时,请将此开关添加到配置中:./configure --prefix=/opt。这样,当您进行安装时,文件将最终位于正确的目录中

相关内容