使用无交互模式将root密码指定为bash脚本

时间:2017-04-21 14:55:09

标签: vagrant ubuntu-16.04 packer

当我使用Packer和Ubuntu 14创建流浪盒时,我已经完成了指定root密码,将此命令处理到脚本配置中:echo "root:vagrant"|chpasswd

但我想用基于Ubuntu 16.04的新流浪盒做到这一点。不幸的是,此命令无法运行,我必须使用SSH连接到我的VM并手动指定我的密码root:sudo passwd

我不想要这个步骤配置密码。我怎么能用打包器和配置脚本来做?使用无交互模式指定root密码?

1 个答案:

答案 0 :(得分:1)

你可以:

1)使用以下内容在d-i passwd/root-password-again password vagrant d-i passwd/root-password password vagrant 文件中设置:

boot_command

请参阅bento: Debian 8 - Example

2)或者在"passwd/root-password={{ user `root_password` }} ", "passwd/root-password-again={{ user `root_password` }} ", 中将其设置为preseed参数:

root_password

其中vagrant是Packer 用户变量。请参阅boxcutter/ubuntu: Ubuntu Template(在此示例中设置了root用户的密码,而不是{{1}})

PTY :请参阅Wikipedia: PseudoterminalPacker Documentation: SSH PTY