Augeasはとっても微妙だと思いました
OTPの記事を読んで興味を持ったのでとりあえずインストールして試してみました。Augeasは設定ファイルをなんかうまい事編集し易くしてくれるツールです。ただ実際試してみたものの、なんだか微妙だなぁ、という印象です。あんまり期待しない方がいいんじゃないのかなー、とだけ最初に断わっておきます。もしかして将来的にはとっても便利になっているのかも知れないけど、どれだけ頑張れるのかなぁ?
インストール方法
まずもってAugeasはRedHat製なんです。だからUbuntuな私は素直にソースを落としてきてビルドすることにしました。現在のところ最新版は 0.2.0 なんですけれど、これを make したところなんか失敗しました。レポジトリを見てみたらそこは既に修正済みのようなので、今現在直接ビルドしようと思っている人はレポジトリから最新版を取得した方が良いと思います。
で、ビルド方法はいつもの通りです。
% ./autogen.sh % ./configure % make % sudo paco -lD make install
みたいな感じ。Augeasのレポジトリは mercurial なんですけど、autogen すると git でなんか取ってきたりして、魑魅魍魎感が漂うところですが、まぁ気にしないでおいた方がいいと思います。
使い方
チュートリアルの始めの方をちょこっとやってみます。
% export AUGEAS_ROOT=/tmp/augeas-sandbox # 環境変数 AUGEAS_ROOT がターゲットになります % mkdir $AUGEAS_ROOT % sudo cp -pr /etc $AUGEAS_ROOT # 安全を考慮して複製をいじることに % sudo chown -R $USER $AUGEAS_ROOT augtool -b # これでaugeasのシェルが起動します augtool> set /files/etc/hosts/10000/ipaddr 192.168.0.1 augtool> set /files/etc/hosts/10000/canonical pigiron.example.com augtool> set /files/etc/hosts/10000/alias[1] pigiron augtool> set /files/etc/hosts/10000/alias[2] piggy augtool> save augtool> ls /files/etc/hosts/10000 ipaddr = 192.168.0.1 canonical = pigiron.example.com alias[1] = pigiron alias[2] = piggy
みたいな。本当はとっても複雑な条件で探したり書いたり出来ちゃってウハウハらしいです。でもOTPの記事でも指摘されているように、hostsファイルに空行があると変更が保存されないよ!この辺はlensとかいう設定ファイルの読み込み指定如何らしいので、そのうち改善が期待できると思います。