क्या यूनिक्स उपयोगकर्ता खाते का नाम बदलना संभव है?


48

मैंने उबंटू को एक कंप्यूटर पर स्थापित किया है जो अब किसी और द्वारा उपयोग किया जाता है। मैंने उसके नाम के साथ खाते का नाम बदल दिया है, लेकिन यह केवल उपयोगकर्ता नाम नहीं, बल्कि पूरा नाम बदल देता है, जो अभी भी शीर्ष दाएं (में fast-user-switch-applet) प्रदर्शित है। क्या यूनिक्स उपयोगकर्ता खाते का नाम बदलने की आज्ञा है?

मैंने नए नाम के साथ एक नया उपयोगकर्ता खाता बनाने के बारे में सोचा है, और फिर नए खाते के घर में "पुराने" घर में सब कुछ कॉपी कर रहा हूं। क्या यह पर्याप्त होगा? लेकिन फिर मुझे लगता है कि फाइलों में पुराने खाते की अनुमति के मालिक होंगे? तो क्या मुझे करना चाहिए chown -R newuser ~?

क्या ऐसा करने का कोई सरल / अनुशंसित तरीका है?

जवाबों:


52

प्रयत्न, कोशिश

usermod --move-home --login <new-login-name> --home <new-home-dir> <old-login-name>

--move-homeविकल्प द्वारा दिए गए नया एक के लिए पुराने घर निर्देशिका की सामग्री को ले जाता है --homeविकल्प जो करता है, तो यह पहले से ही मौजूद नहीं है बन जाता है।

यदि आप चाहते हैं कि प्राथमिक उपयोगकर्ता समूह से मेल खाए new-login-name, तो --gid <new-login-name>ऊपर दिए गए कमांड में जोड़ें , लेकिन समूह को पहले से मौजूद होना चाहिए।

अधिक जानकारी के लिए मैन पेज देखें:

man usermod

धन्यवाद! मैं इस कमांड के बारे में नहीं जानता था। :) हालाँकि, यह इस कंप्यूटर पर एकमात्र खाता है और आदमी यह कहता है: «आपको यह सुनिश्चित करना चाहिए कि नामित उपयोगकर्ता किसी भी प्रक्रिया को निष्पादित नहीं कर रहा है जब यह कमांड निष्पादित हो रहा है यदि उपयोगकर्ता संख्यात्मक उपयोगकर्ता आईडी, उपयोगकर्ता नाम, या। उपयोगकर्ता होम डायरेक्टरी बदली जा रही है। usermod लिनक्स पर यह जांचता है, लेकिन केवल यह जांचें कि उपयोगकर्ता अन्य आर्किटेक्चर पर utmp के अनुसार लॉग इन है या नहीं। »क्या आप ऐसा करने के लिए एक जीवित सीडी का उपयोग करने या एक अस्थायी खाता बनाने का सुझाव देंगे जिसे मैं एक बार पूरा करने के बाद हटा दूंगा?
यान डेन्डल

2
चूंकि आप उबंटू का उपयोग कर रहे हैं और रूट के रूप में लॉगिन नहीं कर सकते हैं, इसलिए मैं एक अन्य खाता बनाऊंगा, जो कहेगा, व्यवस्थापक कि आप इस प्रकार के कार्य के लिए उपयोग करते हैं। एक अस्थायी खाता ठीक वैसे ही काम करेगा लेकिन आप भविष्य में भी इसी तरह के काम कर सकते हैं।
gvkv

3
इस बात से अवगत रहें कि usermod --homeपूर्ण पथ सम्‍मिलित होना चाहिए, जैसे /home/user.name- अन्यथा वर्तमान कार्य निर्देशिका के अंदर नया होम डायरेक्टरी बनाया जाएगा।
तक्षशिला

वह समूह नहीं बदलेगा!
हेंज

22

हालांकि उपयोगकर्ता का नाम बदलना संभव है, और usermodयह कुछ काम करेगा , इससे परेशानी होने की संभावना है। यहां उन स्थानों की सूची दी गई है जहां उपयोगकर्ता का नाम दिखाई दे सकता है; मैं यह दावा नहीं करता कि यह सूची संपूर्ण है।

  • उपयोगकर्ता प्रविष्टि /etc/passwdऔर संबंधित फ़ाइलें (जैसे /etc/shadow, /etc/master.passwd)।
  • /etc/group(और /etc/gshadow) में समूह प्रविष्टियाँ ।
  • संभवतः प्रविष्टियों में /etc/sudoers
  • सिस्टम मेलबॉक्स, आमतौर पर /var/mail/$USERया /var/spool/mail/$USER
  • क्रॉस्टैब, आम तौर पर /var/spool/cron/crontabs/$USER
  • में atनौकरियों ( /var/spool/cron/atjobs/*)

होम निर्देशिका के और भी अधिक स्थानों पर प्रदर्शित होने की संभावना है। कई एप्लिकेशन विभिन्न डॉट फ़ाइलों में निरपेक्ष पथ लिखते हैं। यदि आप होम डायरेक्टरी का नाम बदलने का निर्णय लेते हैं (जबकि उपयोगकर्ता aliceकी होम डाइरेक्टरी की कोई आवश्यकता नहीं है /home/alice, तो यह /home/bobभ्रामक होगा), आपको उनका ध्यान रखना होगा। एक वैश्विक प्रतिस्थापन अधिकांश अनुप्रयोगों के लिए काम करेगा, लेकिन मैं कोई वादा नहीं करता। यदि संभव हो, तो पुराने होम डाइरेक्टरी का नाम बदलकर डायरेक्टेड लिंक के प्रतीकात्मक लिंक के रूप में रखें।


4

यहाँ मैं एक डेबियन प्रणाली पर उपयोग किए गए आदेशों का सारांश है:

groupadd NEW
usermod -l NEW -m -d /home/NEW -g NEW OLD
chfn -f "New Fullname" NEW
cd /home
ln -s NEW OLD

पिछले दो कमांड पुराने होम डायरेक्टरी ( / होम / ओएलडी ) के नाम से एक नया ( / होम / न्यू ) के नाम से एक प्रतीकात्मक लिंक बनाते हैं ।


किस groupaddलिए है?
यन दोनेंडल

2
इसके बजाय groupadd, मुझे लगता है groupmod -n NEW OLDकि गीदड़ को बदलने से बचने के लिए यह बेहतर हो सकता है । कम से कम उबंटू पर उसी नाम का एक समूह है जिसे उपयोगकर्ता डिफ़ॉल्ट रूप से सेटअप करता है, इसलिए कोई भी उस नाम को भी बदलना चाहेगा।
जमदग्नि

1

ऊपर सभी सुरुचिपूर्ण तरीके हैं, लेकिन सिर्फ एक नया उपयोगकर्ता ही क्यों न बनाएं, पहले वाले से घर की सामग्री को कॉपी करें, और यही है? बेशक, अगर यह एक सेवा (आवेदन) खाते के बारे में है, तो शायद यह सबसे अच्छा अभ्यास नहीं है


3
ऐसा लगता है कि यह एक पूर्ण उत्तर पोस्ट के बजाय एक टिप्पणी के रूप में बेहतर हो सकता है जो एक समाधान का उल्लेख करने के अलावा लगभग कुछ भी नहीं जोड़ता है जो पहले से ही ओपी में उल्लेख किया गया था। आपको इस बारे में कुछ जानकारी जोड़ने पर विचार करना चाहिए कि क्यों आपको लगता है कि यह समाधान बेहतर है, या स्वीकार्य भी है।
HalosGhost
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.