Git
etckeeper、Git checkout 和 /etc 中的損壞文件權限
我想弄清楚為什麼在etckeeper送出之後,我在重啟時遇到了問題(由於這個偉大的事情已經解決了)。
我和etckeeper一起玩,
git checkout some_commit_sha
快速瀏覽了一下,然後git checkout master
。
/etc
在這些操作之後,我的文件權限似乎被破壞了。所有文件ssh_host_rsa_key passwd-, shadow-
,包括rw-r--r--
. 我不知道 Git 不保存文件權限。現在我把它們都修好了(我希望我沒有錯過任何東西)。
什麼是獲得早期狀態的正確方法
/etc
,環顧四周,並以正確的文件權限返回主節點?
根據文件(見下文),您必須執行
etckeeper init
在檢查任何文件以恢復權限後。git 不能直接儲存文件權限,所以它由 etckeeper 處理,您需要再次執行 init 以在結帳後恢復它們。
文件部分,
您可以使用任何您喜歡的 git 命令,但請記住,如果您簽出不同的分支或舊版本,git 將直接在系統的 /etc 上執行。如果您決定檢查分支或標籤,請確保再次執行“etckeeper init”以獲取任何元數據更改:
git checkout april_first_joke_etc
etckeeper 初始化