我正在编写一个脚本,它会自动设置testing环境虚拟机。 这个脚本应该自动为我设置一个dmcrypt + LUKS分区,并带有一定的密码。 因为这是一个本地testing环境,所以我不关心密码的安全性,我只是希望整个虚拟机设置过程是自动化的而且是非交互式的。
我如何以非交互方式向“dmcrypt luksFormat”提供密码? 我想使用密码短语,而不是密钥,因为在生产中我们也使用密码短语。
首先要做的是调用正确的命令: cryptsetup ,而不是dmcrypt 。
cryptsetup luksFormat /dev/vda2
第二件事是你可以传递另一个参数来从文件或标准input(使用- )读取密码。
echo -n "This isn't a very secure passphrase." | cryptsetup luksFormat /dev/vda2 -
请注意,在echo需要-n标志以防止将换行符附加到密码上。
查看cryptsetup手册页,了解其他方式来传递密钥材料。