gpt4 book ai didi

salt-stack - salt 栈 : $HOME of users which does not exist yet

转载 作者:行者123 更新时间:2023-12-04 20:35:27 24 4
gpt4 key购买 nike

我创建了一个用户 foo在一个奴才上。奴才评价/etc/default/useradd .这意味着salt master 不知道新的$HOME 是否会是/home/foo或者在我们的例子中 /localhome/foo .

如何获取用户的 $HOME foo作为jinia变量?

我需要在 systemd 服务文件中使用它。

我想避免自定义支柱数据,因为这是多余的。有没有办法通过 Cereal 获得它?

它在助推期间有效吗?首先是用户foo需要创建,然后可以通过查找foo的$HOME创建systemd文件...

如果用户已经存在,这将起作用:

{{ salt['user.info'](user).get('home') }}/foo:
file.recurse:
- source: salt://conf/common/foo

相关问题: https://github.com/saltstack/salt/issues/7883

最佳答案

回答这个问题:

Is there a way to get it via grains?



1) 在 file_roots下添加文件'_grains/homeprefix.py'由主配置文件指定,其内容为:
#!/usr/bin/env python
from os.path import dirname, expanduser

def gethomeprefix():
# initialize a grains dictionary
grains = {}
# Some code for logic that sets grains like
grains['homeprefix'] = dirname(expanduser("~"))
return grains

2) 在 master 上运行 sync cmd 以将 Cereal 信息同步到 minion :
salt '*' saltutil.sync_grains

3)在master上运行grains.get进行测试:
salt '*' grains.get homeprefix

关于salt-stack - salt 栈 : $HOME of users which does not exist yet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36689881/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com