使用 chmod 删除*所有*读/写/执行权限后,是否可以恢复写/读权限?

使用 chmod 删除*所有*读/写/执行权限后,是否可以恢复写/读权限?

我意外地删除了文件的所有权限。现在我没有权限对其进行 chmod。有什么方法可以恢复该文件的 chmod 吗?

谢谢

答案1

我怀疑发生的事情比你的问题中提到的要多,因为那不应该发生:

[madhatta@risby tmp]$ touch foo
[madhatta@risby tmp]$ chmod 000 foo
[madhatta@risby tmp]$ ls -la foo
----------. 1 madhatta madhatta 0 Dec 28 22:25 foo
[madhatta@risby tmp]$ chmod 644 foo
[madhatta@risby tmp]$ ls -la foo
-rw-r--r--. 1 madhatta madhatta 0 Dec 28 22:25 foo

如您所见,无法访问文件并不妨碍将模式改回来。您能告诉我们您做了什么、看到了什么以及出了什么问题吗?

答案2

如果您不是此文件的所有者,则您无法更改此文件的模式。

mnk@mnk:$ ls -la asd
---------- 1 root root 0 2010-12-29 11:17 asd
mnk@mnk:$ chmod 777 asd
chmod: changing permissions of `asd': Operation not permitted

在这种情况下尝试以 root 用户身份使用 chown 命令:

mnk@mnk:$ sudo chown mnk:mnk asd
mnk@mnk:$ chmod 777 asd
mnk@mnk:$ ls -la asd
-rwxrwxrwx 1 mnk mnk 0 2010-12-29 11:17 asd

相关内容