小编Gui*_*ros的帖子

使用Chef配方将多行附加到配置文件

我正在尝试创建一个Chef配方,将多行(20-30)附加到特定的配置文件中.

我知道推荐的模式是更改整个配置文件而不是仅仅附加到文件,但出于多种原因我不喜欢这种方法.

到目前为止,我找到的唯一解决方案是使用a cookbook_file然后使用bash资源来执行:

cat lines_to_append >> /path/configfile

显然这不会正常工作,因为每次运行chef-client时它都会反复追加文件.我必须首先创建一个小的bash脚本来检查特定的字符串,如果没有找到,则附加到该文件.

但这似乎打败了使用Chef的目的.肯定有更好的办法.

一个有希望的解决方案是来自OpsCode社区的系列食谱.它旨在解决这个确切的问题.不幸的是,功能不完整,错误,代码只是一个快速的黑客.远非一个坚实的解决方案.

我评估的另一个选择是augeas.看起来非常强大,但它还为系统添加了另一层抽象.在我的情况下,矫枉过正.

鉴于这是任何系统管理员最明显的任务之一,是否有任何简单而美观的解决方案与厨师,我没有看到?


编辑:这是我到目前为止解决它的方式:

 cookbook_file "/tmp/parms_to_append.conf" do
   source "parms_to_append.conf"
 end

 bash "append_to_config" do
   user "root"
   code <<-EOF
      cat /tmp/parms_to_append.conf >> /etc/config
      rm /tmp/parms_to_append.conf
   EOF
   not_if "grep -q MY_IDENTIFIER /etc/config"
 end
Run Code Online (Sandbox Code Playgroud)

它有效,但不确定这是推荐的Chef模式.

linux chef-infra chef-recipe

11
推荐指数
3
解决办法
4万
查看次数

Tmux - 如何在更改窗格时自动执行命令?

每次我在 tmux 中更改窗格时,有没有办法自动执行命令?

当然,我可以手动执行它,但我正在尝试自动修复颜色中的故障 [1]。我在 Ubuntu 18.04 上使用 tmux 2.6。

谢谢!

——

[1] 上下文:我根据当前用户自动更改窗格颜色(因此 root 将具有不同的窗格颜色),并根据活动/非活动窗口更改 fg/bg。一切正常,但在某些边缘情况下我需要发出tmux refresh-client. 因此,每次更改窗格时,我都试图让刷新客户端自动运行。

linux tmux

0
推荐指数
1
解决办法
651
查看次数

标签 统计

linux ×2

chef-infra ×1

chef-recipe ×1

tmux ×1