etckeeper - 追蹤記錄 /etc 下設定檔的好工具

在使用 Linux 架設服務 (service) 時常會依各種需求而更改設定檔 (configure),可往往這些修改的過程是難以被記錄的,更別說是在多人共同管理的情況下,除了養成手動備份的習慣外,其實我們還可以藉由 etckeeper 來輔助追蹤和記錄其版次的。

etckeeper 是一個藉由版本控制系統 (Version Control System, VCS) 來儲存和蒐集 /etc 設定檔的工具。有了它我們就可以在修改 configure 時附上簡短的敘述以便於後續追蹤,而它同時也整合了套件管理員,我們在進行套件的新增、修改、刪除時也會進行追蹤。以下將以凍仁較慣用 Git 版本控制系統進行示範。

1. 安裝套件。
[ jonny@wheezy ~ ]
$ sudo aptitude install etckeeper [Enter]

2. 修改前建議先備份原有設定,可略過。
[ jonny@wheezy ~ ]
$ sudo cp /etc/etckeeper/etckeeper.conf /etc/etckeeper/etckeeper.conf.ori [Enter]

3. 設定版本控制系統種類,預設為 bzr。
[ jonny@wheezy ~ ]
$ sudo vi /etc/etckeeper/etckeeper.conf [Enter]
..
# The VCS to use.
#VCS="hg"
VCS="git"
#VCS="bzr"
#VCS="darcs"

4. 切換至 /etc 目錄。
[ jonny@wheezy /etc ]
$ cd /etc [Enter]

5. 初始化 etckeeper。
[ jonny@wheezy /etc ]
$ sudo etckeeper init [Enter]
Initialized empty Git repository in /etc/.git/

6. 提交一段訊息以說明此次的初始化動作。
[ jonny@wheezy /etc ]
$ sudo etckeeper commit "Initial commit." [Enter]

完成 etckeeper 初始設定!

接下來我們就可以用 Git 來管理 /etc 底下的設定檔了,例如使用 git status 來觀看當前 working tree 的狀態。
[ jonny@wheezy ~ ]
$ sudo git status [Enter]
# On branch master
nothing to commit (working directory) clean

相關連結:
Linux 下對 /etc目錄進行版本控制 _人人IT網

資料來源:
Using etckeeper with git on Ubuntu — Evil Routers
etckeeper

留言

Popular Articles

MySQL 語法匯整