Embora systemd-machine-id-setup e systemd-firstboot sejam ótimos para sistemas que usam systemd, /etc/machine-id não é um arquivo systemd, apesar da tag. Também é usado em sistemas que não usam o systemd. Então, como alternativa, você pode usar a ferramenta dbus-uuidgen :
rm -f /etc/machine-id
e depois
dbus-uuidgen --ensure=/etc/machine-id
Como mencionado por Stephen Kitt, os sistemas Debian podem ter os arquivos /etc/machine-id e /var/lib/dbus/machine-id . Se ambos existirem como arquivos regulares, o conteúdo deles deve corresponder, portanto, também remova /var/lib/dbus/machine-id :
rm /var/lib/dbus/machine-id
e recrie-o:
dbus-uuidgen --ensure
Este último comando usa implicitamente /var/lib/dbus/machine-id como o nome do arquivo e copiará a ID da máquina do /etc/machine-id já gerado.
A invocação dbus-uuidgen pode ou não já fazer parte da seqüência de inicialização normal. Se for parte da seqüência de inicialização, a remoção do arquivo e a reinicialização devem ser suficientes. Se você precisar executar dbus-uuidgen , preste atenção ao aviso na página do manual:
If you try to change an existing machine-id on a running system, it will probably result in bad things happening. Don't try to change this file. Also, don't make it the same on two different systems; it needs to be different anytime there are two different kernels running.
Então, depois de fazer isso, definitivamente não continue usando o sistema sem reiniciar. Como uma precaução extra, você pode, em vez disso, reinicializar primeiro no modo de recuperação (ou, como você sugeriu, inicializar a partir de um pen drive USB), mas, da minha experiência, isso não é necessário. Coisas ruins podem acontecer, mas as coisas ruins que acontecem são corrigidas pela reinicialização de qualquer maneira.