Cobbler+Kickstart $basearch 問題

Cobbler+Kickstart $basearch 問題

私はCentOS 6.5とCobbler 2.4(EPEL)を使用しています。$basearch解釈されず(動作する)リポジトリファイルを生成するためにheredocコメントを使用しようとしています。ファイルが作成されましたが、$basearch置き換えられませんでした(例:削除済み)。

私が持っているもの:

%post
#raw
cat > /etc/yum.repos.d/blah.repo <<REPO
[repo]
name=repo
baseurl=http://repo.local/repo/$basearch
enabled=1
priority=99
gpgcheck=0
REPO
#end raw
%end

実際に入れたもの/etc/yum.repos.d/blah.repo$basearch欠けている):

[repo]
name=repo
baseurl=http://repo.local/repo/
enabled=1
priority=99
gpgcheck=0

私が確認したこと:

  • cobbler validateks修正されていないキックスタートスクリプトが私にcobbler profile getks ...報告されたので、CobblerやCheetahではないことを知っています(#rawそして#end raw
  • エスケープされていない文字列を正しく表示するテンプレートの例をCheetahで作成しました。

もう少し調べて見つけました。これ$basearch、最初の項目からキックスタートの特殊変数のように見えます。ファイルのインポートを使用したり、スキーマを明示的に定義したりせずにこの問題を解決する方法に関するcurl提案はありますか?単純化のためにキックスタートファイルに保存したいと思います。

答え1

問題は、#rawandが#end rawbashによって解釈されるのでエスケープする必要があることです。

%post
#raw
cat > /etc/yum.repos.d/blah.repo <<REPO
[repo]
name=repo
baseurl=http://repo.local/repo/\$basearch
enabled=1
priority=99
gpgcheck=0
REPO
#end raw
%end

関連情報