2012-09-11 87 views
2

在試圖學習augeas配置文件語言的過程中,我設置的第一個真正的任務是複製grub.conf的第一個塊,並向該副本添加一個「單個」內核參數。Augeas無法將節點設置爲另一個節點的值?

在這樣做的過程中,我搜索了文檔並找不到表達式,該表達式允許您獲取樹中其他節點的值(如函數或運算符等)。你知道,就像C中的一個星號(*),用於間接尋址,這樣你就可以將一個值複製到樹的另一部分。我敢肯定,如果我使用的是C API,我可以得到它的價值,但我主要是從puppet調用它,所以它更像是通過augtool來使用它。

我是瘋了還是真的是語言的一部分,我只是沒有看到它?

回答

4

目前沒有辦法僅使用Augeas語言將節點的值複製到另一個節點。

爲了在Puppet中實現此目的,需要在處理目錄之前檢索該值,以便使用目錄中的值。這樣做需要寫一個事實。

基於Augeas創建事實的最簡單方法是使用augeasfacter,它使您可以使用簡單的配置文件輕鬆創建新事實。

一旦你創建了新的事實,你可以像使用任何其他變量一樣在Puppet中使用它的值。特別是,您可以使用它來設置使用augeas類型的節點。

+0

謝謝!這證實了我的想法。 –

+2

太好了。如果這回答你的問題,你可以點擊打勾來驗證答案。 –

相關問題