所以我故意将 /lib 文件夹的权限更改为 750。不是递归。我现在面临的是
-bash: /bin/ls: Permission denied
并且(更成问题)
-bash: /usr/bin/sudo: Permission denied
错误。所以我需要弄清楚的一件事是如何解决这个问题(live-cd...但这是一个无头服务器,只有 DisplayPort,没有可用的 DP 显示器,所以这很糟糕),但最重要的是...为什么会发生这种情况?
我承认,*nix 权限总是让我感到困惑。为什么更改 lib 文件夹的世界观会导致我无法执行任何操作?如果我执行了 751,我会没事吗?如果我将自己的用户添加到 root 组,我会没事吗(但这似乎是个坏主意)?
谢谢。
[编辑]
根据评论的要求,这里是相关的 getfacl 结果(将 /lib 修复回 755 后,lib、bin 和 usr 的结果相同):
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
答案1
好的,我已让它恢复运行。
我现在再次尝试使用 751 而不是 750,它似乎有效。我猜 0 使所有库对当前登录的用户都隐藏,因为该文件夹归 root:root 所有,而我不是 root 成员。Sudo(等)依赖于库,并且没有可执行位。751 将可执行文件设置为世界,这样就解决了问题。我会遇到 751 的其他麻烦吗?我们拭目以待 ;)