Password in baremetal-deploy

Just sharing…

Recently ran baremetal-deploy and was unable to login to the resulting Ubuntu image and had to manually clear out the password from /etc/shadow.

I then realized the password I supplied contained a ! character … if my memory serves me right I’ve seen this confuse deployments on other Linux distros because the ! acts as a sort of escape sequence and isn’t passed properly to /bin/passwd by the shell.

So I suspect this was the issue just fair warning if your provisioning passwords contain special characters you may find yourself locked out.

1 Like

Thanks for reporting!

The root of the problem appears to be sanitization/quoting of the arguments passed to the run-manipulator tool (which is responsible for generating a cloud-init file + any other steps needed to get an OS working nicely on a Ten64)

As it turns out, the sanitization/quoting of the arguments (utils.quote_arg) isn’t necessary as the command isn’t being invoked via the shell, but directly through an fork+exec call.

So in effect the generated cloud-config had password: 'password!' instead of just password: password!

The recovery firmware is due for an update so I’ll address this soon.

I had this issue when installing Debian bookworm. I just figured I put the password in wrong. :sweat_smile:

Had a bit of learning and how to reset the password.