Linux

恢復文件的可執行權限

  • December 3, 2021

我錯誤地認為chmod -x */home在一個子文件夾中(錯誤的終端)。現在我從不同的應用程序中得到各種錯誤。有沒有辦法讓我檢測出哪些文件被修改並恢復它們?

如果您在主目錄中執行此操作,則很有可能它只影響目錄;您可以通過執行恢復那裡的權限

chmod u+x */

這將為您提供對目前目錄中所有非隱藏目錄的執行(搜尋)權限。

要檢測哪些文件被更改:

  • 確定(或猜測/估計)何時執行chmod. 可以使用 _ chmod_touch
ls -ldc*文件*

假設是 39 分鐘前。添加三個作為軟糖因子,並且

找到*起始*目錄 -cmin -42 -print

查找在過去 42 分鐘內更改的所有文件。

如果您在執行 後幾個小時才執行此操作chmod -x,您可能會得到誤報,因為其他文件可能已因其他原因(通過其他機制)更改。

沒有可靠的方法來確定哪些文件以前是可執行的(除了檢查備份之外)—— 即使您將文件更改為它已經擁有的模式,它也似乎已被更改。chmod如果您想查找在過去 42 分鐘內更改的所有文件並授予自己對它們的執行權限,請執行

查找*起始*目錄 -cmin -42 -exec chmod u+x {} +

這可能是危險的。如果您只想對目錄執行此操作,請執行

查找*起始*目錄 -type d -cmin -42 -exec chmod u+x {} +

引用自:https://unix.stackexchange.com/questions/679927