使用Puppet向文件追加两行报错:重复声明File_line资源
Puppet重复声明资源报错的解决办法
核心问题很明确:你给两个File_line资源用了完全一样的标题Append a line to services。在Puppet里,同一个类型的资源标题必须唯一,标题是资源的唯一标识,重复声明就会触发这个冲突报错。
解决起来很简单,给两个资源换不同的、能区分开的标题就行,比如对应各自的服务名:
file { '/etc/services': ensure => present, }-> file_line { 'Add service1 entry to /etc/services': path => '/etc/services', line => 'service1 9200/tcp # service1', }-> file_line { 'Add service2 entry to /etc/services': path => '/etc/services', line => 'service2 9201/tcp # service2', }
额外提一句:资源标题最好能清晰描述作用,别用模糊的通用名称,后续维护的时候一眼就能知道这个资源是干嘛的,省得翻代码找逻辑。
内容的提问来源于stack exchange,提问作者IGGt
相关产品推荐
相关产品推荐

