我一直在想这个问题,我想有些黑客可能知道。我在虚拟机上做过这件事,但无论如何也想不出该怎么做。
答案1
perl -e 'chmod 0755, "/bin/chmod";'
如果您是 root,这将修复此问题。大多数基于 unix 和 linux 的操作系统都默认安装并可用 perl。
答案2
无聊的选项:从实时 CD/不同的机器挂载该分区并 chmod 你的 chmod...
如果你安装了python,请和有一些可以编辑的可执行 Python 脚本,你可以劫持它来调用操作系统修改模式.或者在任何仍然可以执行的、可以进行系统调用的东西中进行类似的调用。
答案3
cp /bin/ls new-chmod && cp /bin/chmod new-chmod && ./new-chmod +x /bin/chmod
首先,创建一个新文件(必须是新文件,这样 cp 才会复制权限),它是现有可执行文件 (/bin/ls) 的副本。然后将 chmod 的内容复制到新的可执行文件上(cp 不会将权限复制到现有文件)。然后使用这个新的可执行文件 chmod 使 /bin/chmod 可执行。
答案4
切换到单用户模式(init 1
)您应该能够恢复您的权限。
实际上(尽管不完全正确),此日志记录是作为“超级根”用户进行的。