我正在学习木偶,我正在尝试编写模块来安装tigervnc和openvpn等服务。
问题是对于tigervnc,需要用户设置初始密码。我尝试过使用: " exec {' / usr / bin / echo密码| / usr / bin / vncpasswd> 〜/ .vnc / passwd的" 如果我在命令行上运行它,如果我以用户身份登录但在通过puppet运行时不起作用,则此方法有效。
openvnc的问题在于它需要大量用户交互来进行证书生成/证书颁发机构和密钥生成的默认设置。 我已经尝试过使用带有" pkitool"有效但不太好或不稳定的方法。如果有更好的方法,我也很谨慎使用很多高管。
总而言之,我的主要问题是如何在尝试使用puppet进行自动化安装时如何处理这些用户交互,是否有比运行大量高管更好的方式,这对我来说似乎是最后的手段?
由于
答案 0 :(得分:0)
如果设置一个软件需要用户互动,我真的没有看到exec
的方法。将其使用降至最低确实是一个合理的设计目标。
经济方法是
exec
在适当的时间运行(以及良好的creates
或onlyif
查询)运行依赖于交互式输入的安装向导的脚本可能应该依赖于expect
和朋友。