我错误地chmod -x *
认为/home
我在子文件夹中(错误的终端)。现在我从不同的应用程序中收到各种错误。有没有办法让我检测哪些文件被准确修改并恢复它们?
答案1
如果您在主目录中执行此操作,则很可能它只影响目录;您可以通过运行来恢复那里的权限
chmod u+x */
这将为您提供当前目录中所有非隐藏目录的执行(搜索)权限。
答案2
要检测哪些文件被更改:
- 确定(或猜测/估计)您运行
chmod
.您可以确定特定文件最后一次出现的时间改变了 (chmod
'ed、重命名、链接到、touch
ed 或修改)LS-LDC文件
假设这是 39 分钟前。添加三个作为软糖系数,并且 - 做
寻找起始目录-cmin -42 -打印
查找过去 42 分钟内更改的所有文件。
如果您在运行 几个小时后才执行此操作chmod -x
,则可能会收到误报,因为其他文件可能因其他原因(通过其他机制)已被更改。
没有可靠的方法来确定哪些文件以前是可执行的(除了检查备份)——文件看起来像是已被执行过。改变了
即使您chmod
使用它已有的模式。如果您想查找过去 42 分钟内更改的所有文件并授予自己对它们的执行权限,请执行以下操作
寻找起始目录-cmin -42 -exec chmod u+x {} +
这可能存在潜在危险。如果您只想对目录执行此操作,请执行
寻找起始目录-type d -cmin -42 -exec chmod u+x {} +