为什么opt文件夹默认被root扣留?

Viv*_*enG 6 linux permissions

我听说一位同事说他将所有软件安装在/opt. 我上网查了一下,发现是真的,tldp.org网站上写着:

[/opt] 保留用于不属于默认安装的所有软件和附加包。

好吧,看起来他是对的,所以我尝试将 Android Studio 安装到此文件夹中,但由于我不是 root 而被拒绝...

所以我想知道,为什么默认情况下,这个文件夹被 root 用户扣留,如果可以,chown我的用户没有任何问题。

Fra*_*mas 7

在 linux 中,一般的想法是所有不与特定用户帐户隔离的软件都应该由管理员安装和维护。

但是 /opt 中的软件可以由用户执行,因此默认情况下它具有 755 权限。

PATH 上的所有可执行文件(用户范围的除外)都必须经过管理员批准,以防止常见的路径攻击,这一点很重要。由于安装在 /opt 中的软件会影响所有用户,因此它被锁定。

/ 中的所有文件夹都归 root:root 所有,这也是 linux 中的一般规则。这可以防止删除和重命名。有关 Linux 目录结构的更多详细信息和指南,请参见此处:http : //www.thegeekstuff.com/2010/09/linux-file-system-structure/

  • 那么我可以在不更改文件夹所有者的情况下以超级用户身份在该文件夹中安装 Android Studio 吗?我会因为用户启动的应用程序无法在其文件夹上写入而遇到问题吗? (2认同)
  • 好吧,正确设计的应用程序会将其所有配置/临时/输出文档写入 ~/,以保持用户隔离。如果应用程序不符合这些标准,您可以更改 /opt/AndroidStudio 目录而不是 /opt 本身的所有权/权限。 (2认同)