:::: MENU ::::
Posts tagged with: git

etckeeperで/etcをgit管理

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

インストール

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 git@bitbucket.org:user/repo
  • ssh鍵の登録
    etckeeper側ホストでrootにて、鍵がなければを作成する(パスは空で)

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

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

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

  

自動実行

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

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

# /etc/cron.daily/etckeeper

gitのpushでGtk-WARNING **: cannot open display:と出た場合

環境によって、git pushした場合に、下記のエラーが出る場合がある。

(gnome-ssh-askpass:28497): Gtk-WARNING **: cannot open display:

コマンドラインで操作している場合に、GUIで起動しようとして失敗するよう。

なので、

$ unset SSH_ASKPASS

を実行して、git pushすると良い。


gitでのSSLエラー回避

SSL環境をセットアップしていないと、gitでSSLのエラーが出るので、これを無視。

error: SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed while accessing https://github.com/.…..

$ git config --global http.sslVerify false