Command-Line

如何恢復 chown 命令?

  • June 2, 2020

如果我執行:

sudo chown -R user:user /

我可以將它恢復到我執行它之前的狀態嗎?

簡而言之:沒有。

您需要從備份中恢復。(一些備份工具可能有僅恢復權限的選項,其他工具可以列出具有其權限的備份文件,您可以使用它來修復您的系統。)

如果您沒有備份,則需要手動修復所有這些。

僅當您知道目錄下每個文件和目錄的使用者和組所有權時/

即便如此,您已經破壞了需要由 root 擁有的關鍵系統文件的所有權,包括sudo命令。您可能需要在另一個系統上安裝硬碟驅動器 - 並註意另一個系統可能不會具有與您剛剛破壞的系統相同的 UID 和 GID 映射。

如果可以,請複制整個硬碟驅動器,然後重新安裝作業系統。完成此操作後,您可以嘗試將文件複製回新擦除的系統並恢復其所有權。您可能可以假設(雖然不是 100% 可靠)下面的所有/home/foo內容都歸 user 擁有foo,並且下面的每個郵件假離線文件/var/mail都歸相應的使用者所有(如果系統上有電子郵件)。/home根據您對系統所做的操作,您可能無需恢復大多數不在.

然後開始培養一個習慣,在你點擊sudo 之前Enter仔細檢查你執行的任何命令。

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