Sebbene systemd-machine-id-setup
sia systemd-firstboot
ottimo per i sistemi che usano systemd, /etc/machine-id
non è un file systemd, nonostante il tag. Viene anche utilizzato su sistemi che non utilizzano systemd. Quindi, in alternativa, è possibile utilizzare lo dbus-uuidgen
strumento:
rm -f /etc/machine-id
e poi
dbus-uuidgen --ensure=/etc/machine-id
Come menzionato da Stephen Kitt, i sistemi Debian possono avere sia un /etc/machine-id
che un /var/lib/dbus/machine-id
file. Se entrambi esistono come file regolari, il loro contenuto dovrebbe corrispondere, quindi lì, rimuovere anche /var/lib/dbus/machine-id
:
rm /var/lib/dbus/machine-id
e ricrearlo:
dbus-uuidgen --ensure
Quest'ultimo comando utilizza implicitamente /var/lib/dbus/machine-id
come nome del file e copia l'ID macchina da quello appena generato /etc/machine-id
.
L' dbus-uuidgen
invocazione può o meno essere parte della normale sequenza di avvio. Se fa parte della sequenza di avvio, rimuovere il file e riavviare dovrebbe essere sufficiente. Se devi correre dbus-uuidgen
da solo, presta attenzione all'avvertimento nella pagina man:
Se provi a cambiare un id macchina esistente su un sistema in esecuzione, probabilmente si verificheranno cose brutte. Non provare a cambiare questo file. Inoltre, non farlo allo stesso modo su due sistemi diversi; deve essere diverso ogni volta che ci sono due kernel diversi in esecuzione.
Quindi, dopo aver fatto questo, sicuramente non continuare a utilizzare il sistema senza riavviare. Come ulteriore precauzione, puoi invece riavviare prima in modalità di salvataggio (o come hai suggerito, avviare da una chiavetta USB live), ma per mia esperienza, ciò non è necessario. Le cose brutte possono accadere, ma le cose brutte che accadono vengono comunque riparate dal riavvio.