Embora systemd-machine-id-setup
e systemd-firstboot
seja ótimo 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. Portanto, como alternativa, você pode usar a dbus-uuidgen
ferramenta:
rm -f /etc/machine-id
e depois
dbus-uuidgen --ensure=/etc/machine-id
Como mencionado por Stephen Kitt, os sistemas Debian podem ter um /etc/machine-id
e um /var/lib/dbus/machine-id
arquivo. Se ambos existirem como arquivos regulares, seu conteúdo deve corresponder, então remova também /var/lib/dbus/machine-id
:
rm /var/lib/dbus/machine-id
e recrie-o:
dbus-uuidgen --ensure
Esse último comando usa implicitamente /var/lib/dbus/machine-id
como o nome do arquivo e copiará o ID da máquina do já gerado recentemente /etc/machine-id
.
A dbus-uuidgen
chamada pode ou já não faz parte da sequência de inicialização regular. Se fizer parte da sequência de inicialização, remover o arquivo e reinicializar deve ser suficiente. Se você precisar executar dbus-uuidgen
, preste atenção ao aviso na página de manual:
Se você tentar alterar um ID de máquina existente em um sistema em execução, provavelmente resultará em coisas ruins acontecendo. Não tente alterar este arquivo. Além disso, não faça o mesmo em dois sistemas diferentes; ele precisa ser diferente sempre que houver dois kernels diferentes em execução.
Então, depois de fazer isso, definitivamente não continue usando o sistema sem reiniciar. Como precaução extra, você pode reiniciar primeiro no modo de recuperação (ou, como sugeriu, inicializar a partir de um stick USB ativo), mas, pela 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.