修复 Ubuntu Linux 在 `/` 目录中的权限灾难

Cob*_*olt 3 linux permissions ubuntu

我花了一天的大部分时间来设置 Ubuntu 12.10 服务器,我真的很享受它。我很愚蠢地做了:

sudo chmod 666 /*
Run Code Online (Sandbox Code Playgroud)

而不是同样的嫌疑人

sudo chmod 666 ./*
Run Code Online (Sandbox Code Playgroud)

我现在无法使用系统上的任何程序

我还没有设置 root 密码,所以现在我真的希望我在 CentOS 上:'(

有什么我可以不用重新开始的吗?提前致谢!

小智 7

您必须从实时 cd 启动,因为目前无法访问所有可执行文件(删除目录上的访问位/bin,...)。

请这样做:

  1. 从 live cd 启动
  2. 在下面挂载您的系统mnt,不要忘记添加其他挂载,例如/usr, /var, ...
  3. cd /mnt/
  4. for d in * ; do if [ -d ${d} ] ; chmod u+rwx,og+rx-w ${d}; fi
  5. chmod og= root lost+found # more restrictive permissions
  6. 重新启动系统并喝啤酒 :-)

警告: 这适用于/通常只包含子目录和符号链接的根目录。

  • @Cobolt - 欢迎您:-) 开心一下,想想如果您还将 `-R` 开关添加到 `chmod` 会发生什么;-) (2认同)