Linux マシンの /etc を Github で管理 : etckeeper

Linuxマシンのシステム・ワイドな設定は /etc の下に入っているので、/etcをバックアップすれば安心です。

それを管理できる etckeeper があることを今ごろ知りました。ということで、早速使ってみます。

そのままでは、ローカルで管理するだけですが、設定でGithubにpushもできます。

Githubにプライベート・レポジトリを作成

公開しないようにプライベート・レポジトリを作っておきます。

基本設定

/etc/etckeeper/etckeeper.conf を編集します。

VCS="git"

バージョン・コントロールはgitになっているのを確認します。

リモート・レポジトリを使うので以下を書いておきます:

USH_REMOTE="origin"

リモート・レポジトリの設定

/etc/.git/configにリモート・レポジトリを設定します。ここを編集しても良いですが、ここでは 直接に編集しないで、gitコマンドでリモート・レポジトリを設定します:

cd /etc
sudo git add origin git@github.com:XXXX/hoge-repo.git

ここではsshを使うので、git@github.com:XXXXX/hoge-repo.gitの形で指定しておきます。

ssh 鍵の生成とGithubへの登録

この記事と同様に生成してGithubに登録しておきます。ただしこの場合はrootで生成しておきます。 (etckeeperはroot権限で実行されるため。)

cronでpushを実行するための設定

/etc/etckeeper/daily を編集します。

etckeeper commit "daily autocommit" >/dev/null

となっているところに1行足して、以下のようにしておきます:

etckeeper commit "daily autocommit" >/dev/null
git push -u origin master