为什么在根文件夹中拥有 777 权限不允许我登录?

问题描述

我的一个朋友在她的 Arch linux 上运行了 chmod 777 -R /,然后她无法通过 tty 登录。她的用户或 root 登录不正确。她能够在 live usb、chroot 上挂载分区并将 root 权限更改为 755。这修复了它,但我想知道为什么 777 会导致它不起作用,因为理论上她应该有权做任何事情。这是否是某种安全措施,因为显然 777 不安全?

解决方法

毯子 777 会导致副作用,因为:

  1. 正如您所怀疑的那样,某些程序对文件权限非常挑剔以确保安全。
  2. 某些程序依赖于 setuid/setgid/sticky 位,这些位会被 777 清除。

即使系统现在恢复到某种程度可用的状态,最好重新安装而不是在各处精心恢复正确的位。