0

このようなバインド固有の $GENERATE ディレクティブを使用するゾーン ファイルがいくつかあります。

$GENERATE 50-100 srv-${-50,3,d}  A 10.34.38.$

これを cfengine に追加すると、${...} を展開しようとしてエラーが発生します。この ${ を \${ でエスケープでき、それは cfengine を渡しますが、named-checkzone を使用することはできません (cfengine LITERAL ディレクティブは、ゾーン ファイルに @@LITERAL を追加するため、named-checkzone も失敗させます)。1 つのオプションは、$GENERATE を 1 行に拡張することです。他に選択肢はありますか?

4

1 に答える 1

1

これは CFEngine 2 ですか、それとも CFEngine 3 ですか?

それが CFEngine 3 である場合、これに組み込み変数 const.dollar を使用すると役立ちますか?

次の例を検討してください。

body common control {
    bundlesequence => { "test"};
}

bundle agent test {
    reports:
        linux::
            "$GENERATE 50-100 srv-$(const.dollar){-50,3,d}  A 10.34.38.$";
}

これにより、cf-agent によって次が出力されます。

# /var/cfengine/bin/cf-agent -K -f /tmp/test.cf 
R: $GENERATE 50-100 srv-${-50,3,d}  A 10.34.38.$

あなたが達成しようとしているのはこのようなものですか?

于 2011-08-10T13:01:10.677 に答える