ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
### 临时禁用资源 有时候,你希望在不会干扰其他工作的情况下临时禁用一个资源。例如, 你可能想要调整服务器上的一个配置文件,经过 Puppet 的不断测试,直到获得你想要的确切设置。 在此期间你不想让 Puppet 覆盖旧版本的配置,为此你可以在资源上设置如下的 noop 元参数: ``` noop => true, ``` #### 操作步骤 1. 添加如下代码到你的配置清单: ``` file { "/tmp/test.cfg": content => "Hello, world!\n", noop => true, } ``` 2. 运行 Puppet: ``` # puppet agent --test info: Retrieving plugin info: Caching catalog for cookbook.bitfieldconsulting.com info: Applying configuration version '1306159566' notice: /Stage[main]//Node[cookbook]/File[/tmp/test.cfg]/ensure: is absent, should be file (noop) notice: Finished catalog run in 0.53 seconds ``` 3. 测试之后,移除 noop 参数: ``` file { "/tmp/test.cfg": content => "Hello, world!\n", } ``` 4. 再次运行 Puppet: ``` # puppet agent --test info: Retrieving plugin info: Caching catalog for cookbook.bitfieldconsulting.com info: Applying configuration version '1306159705' notice: /Stage[main]//Node[cookbook]/File[/tmp/test.cfg]/ensure: defined content as '{md5}746308829575e17c3331bbcb00c0898b' notice: Finished catalog run in 0.52 seconds ``` #### 工作原理 首次运行 Puppet 时,由于 noop 元参数被设置为 true, 因此对于这一特定资源, 与你使用 --noop 标志运行 Puppet 的效果是一样的。 Puppet 会指出此资源将被应用, 除此之外什么也没做。 再次运行 Puppet 时,由于 noop 元参数被移除,所以此资源会被正常地应用到节点。