हालांकि systemd-machine-id-setupऔर systemd-firstbootsystemd का उपयोग कर सिस्टम के लिए महान हैं, /etc/machine-idएक systemd फ़ाइल, टैग के बावजूद नहीं है। इसका उपयोग उन प्रणालियों पर भी किया जाता है जो सिस्टमड का उपयोग नहीं करते हैं। एक विकल्प के रूप में, आप dbus-uuidgenउपकरण का उपयोग कर सकते हैं :
rm -f /etc/machine-id
और फिर
dbus-uuidgen --ensure=/etc/machine-id
जैसा कि स्टीफन किट ने उल्लेख किया है, डेबियन सिस्टम में फाइल /etc/machine-idऔर /var/lib/dbus/machine-idफाइल दोनों हो सकते हैं । यदि दोनों नियमित फ़ाइलों के रूप में मौजूद हैं, तो उनकी सामग्री का मिलान होना चाहिए, इसलिए वहां भी, हटाएं /var/lib/dbus/machine-id:
rm /var/lib/dbus/machine-id
और इसे फिर से बनाएं:
dbus-uuidgen --ensure
यह अंतिम आदेश अंतर्निहित /var/lib/dbus/machine-idरूप से फ़ाइल नाम के रूप में उपयोग करता है और पहले से ही नव-निर्मित मशीन आईडी को कॉपी करेगा /etc/machine-id।
dbus-uuidgenमंगलाचरण या पहले से ही नियमित रूप से बूट अनुक्रम का हिस्सा नहीं हो सकता है। यदि यह बूट अनुक्रम का हिस्सा है, तो फ़ाइल को हटाना और रिबूट करना पर्याप्त होना चाहिए। यदि आपको स्वयं को चलाने की आवश्यकता है dbus-uuidgen, तो मैन पेज में चेतावनी पर ध्यान दें:
यदि आप किसी मौजूदा मशीन-आईडी को रनिंग सिस्टम पर बदलने की कोशिश करते हैं, तो यह संभवत: खराब चीजों के रूप में होगा। इस फ़ाइल को बदलने का प्रयास न करें। इसके अलावा, इसे दो अलग-अलग प्रणालियों पर समान न करें; इसे कभी भी अलग करने की आवश्यकता है, दो अलग-अलग गुठली चल रही हैं।
ऐसा करने के बाद, रिबूट किए बिना सिस्टम का उपयोग करना जारी न रखें। एक अतिरिक्त सावधानी के रूप में, आप इसके बजाय बचाव मोड में पहले रिबूट कर सकते हैं (या जैसा कि आपने सुझाव दिया है, एक लाइव यूएसबी स्टिक से बूट करें), लेकिन मेरे अनुभव से, यह आवश्यक नहीं है। बुरी चीजें हो सकती हैं, लेकिन जो बुरी चीजें होती हैं वे वैसे भी रिबूट द्वारा तय की जाती हैं।