etckeeperで/etcをgit管理

* 本ページはプロモーションが含まれています

/etcをGit管理出来るetckeeperは以前か知っていたのだが、放置したままだったので、今更導入してみた。

Contents

  • 1 インストール
  • <li>
      <a href="#i-2"><span class="toc_number toc_depth_1">2</span> 設定</a>
    </li>
    <li>
      <a href="#i-3"><span class="toc_number toc_depth_1">3</span> 初期化</a><ul>
        <li>
          <a href="#origin"><span class="toc_number toc_depth_2">3.1</span> origin追加</a>
        </li>
        <li>
          <a href="#i-4"><span class="toc_number toc_depth_2">3.2</span> コミット</a>
        </li>
      </ul>
    </li>
    
    <li>
      <a href="#bitbucket"><span class="toc_number toc_depth_1">4</span> bitbucketの利用</a>
    </li>
    <li>
      <a href="#i-5"><span class="toc_number toc_depth_1">5</span> 自動実行</a>
    </li>
    

インストール 

Redhat系 

# yum -y install etckeeper --enablerepo=epel

Debian系 

# ap-get -y install etckeeper

設定 

/etc/etckeeper/etckeeper.confの下記箇所を確認及び追記

VCS="git"
 PUSH_REMOTE="origin"

初期化 

# cd /etc/
# etckeeper init

origin追加 

# git remote add origin git_url

コミット 

# etckeeper commit -m 'first commit'

bitbucketの利用 

githubでもやることは同じ

  • bitbucketにログインし、リポジトリを作成

  • etckeeper側ホストでoriginの登録

    # git remote add origin [email protected]:user/repo
  • ssh鍵の登録
    etckeeper側ホストでrootにて、鍵がなければを作成する(パスは空で)

    # sh -c 'ssh-keygen ; less /root/.ssh/id_rsa.pub’

    表示されたssh鍵をbitbucket側に登録する

注意することは、作成したリポジトリの設定でSSH鍵を登録するのでなく、アカウント設定欄からSSH鍵を登録すること。
各リポジトリ設定でssh鍵を登録するとリードオンリーとなりアクセス拒否されてしまいます。

Source Bitbucket 2018 02 06 12 44 43   Account settings Bitbucket 2018 02 06 12 45 38

Ssh keys Bitbucket 2018 02 06 12 46 30

自動実行 

etckeeperをインストールした時点で、/etc/cron.dailyにスクリプトが作成されるので、毎日自動で/etc内を更新してくれるようになっています。

一度、手動実行して、無事に登録出来るのか確認してみると良いでしょう。
# /etc/cron.daily/etckeeper

See also