Git

是否可以將 etckeeper 與單個共享 git 儲存庫一起使用?

  • June 8, 2016

我注意到有幾個人建議使用etckeeper將版本控制應用到我的 /etc 目錄。

在我看來,預設安裝會將儲存庫與您嘗試管理的 /etc 放在同一台機器上。這適用於版本控制,但沒有提供對文件進行伺服器外備份的額外好處 - 或者允許我將 /etc 的部分從一台源電腦複製到另一台源電腦。

是否可以在中央管理機器上共享單個 git 儲存庫,以便每個伺服器上的 etckeeper 將其數據儲存在同一個地方?

(我現在正在使用 svn 和一些自定義腳本來送出和恢復文件,但我必須記住在進行更改時送出它們。)

首先,使用 install etckeeper,在 /etc/etckeeper/etckeeper.conf 中為 git 配置。遵循您的發行版或原始碼的 etckeeper 安裝方法。

很快,您將擁有一個 /etc/.git

現在在您的伺服器上,確保您有一個(安全的)repo 可以推送到…

# ssh faruser@farhost     
# mkdir somedir cd somedir && git init && chmod 700 .git    
# exit

現在在初始主機上,通過 ssh 將本地 repo 推送到伺服器:

# cd /etc && git push faruser@farhost:somedir

Somedir 在這種情況下當然可以是相對的(遵循 ssh 約定)

每當您進行影響 /etc 的更改(並被 etckeeper 擷取到 /etc/.git 中)時執行此操作,您將擁有機器的本地和離線儲存庫。

或者設置無密碼 ssh 並在 /etc/etckeeper/commit.d/ 中創建一個掛鉤,這樣如果機器始終處於連接狀態,它就會自動發生。

引用自:https://serverfault.com/questions/28973