यदि आपने उपयोगकर्ता खाता बनाया है useradd
, तो आपको इसके लिए सब कुछ मैन्युअल रूप से सेट करना होगा। यही कारण है कि, कमांड-लाइन से उपयोगकर्ता खाते बनाते समय, इसके adduser
बजाय उबंटू (और डेबियन, और अन्य डेबियन-आधारित सिस्टम) में उपयोग करने की सिफारिश की जाती है । आप केवल उपयोगकर्ता को इसके साथ हटाना userdel
या deluser
इसे फिर से बनाना चाहेंगे adduser
। अन्यथा...
होम निर्देशिका स्थान फिक्सिंग
यदि आप उपयोगकर्ता खाता रखना चाहते हैं और समस्या को ठीक करना चाहते हैं, तो आपको देखने की आवश्यकता है:
- उपयोगकर्ता निर्देशिका के लिए होम निर्देशिका का नाम वास्तव में कॉन्फ़िगर किया गया है
- आपके द्वारा बनाई गई निर्देशिका का नाम
ये बिल्कुल एक जैसे होने चाहिए। आपको मिलने वाला त्रुटि संदेश आपको su -l penner
बता रहा है कि वे समान नहीं हैं।
होम निर्देशिका उपयोगकर्ता खाते वास्तव में के लिए कॉन्फ़िगर किया गया है की जाँच करने के लिए, इस आदेश चला (देखें man 5 passwd
और man grep
अधिक जानकारी के लिए):
grep penner /etc/passwd
आपको इस तरह से एक लाइन देखनी चाहिए:
penner:x:1000:1000:Eliah Kagan,,,:/home/penner:/bin/bash
यही है, छठी- :
छिन्न क्षेत्र (पांचवें के बाद :
) में घर की निर्देशिका शामिल है। यदि यह नहीं है /home/penner
, तो यह होना चाहिए। यदि उपयोगकर्ता के लिए आपके द्वारा बनाई गई निर्देशिका नहीं है /home/penner
, तो यह भी होना चाहिए। यदि दो निर्देशिकाएं समान हैं, लेकिन दोनों में से कोई एक नहीं है /home/penner
, तो वह सैद्धांतिक रूप से काम कर सकती है, लेकिन आपको उन दोनों को बनाना चाहिए /home/penner
, क्योंकि बहुत सारे सॉफ्टवेयर मानते हैं कि सभी गैर- root
उपयोगकर्ता निर्देशिकाएं हैं ।/home/username
आप इस कमांड को चलाकर penner
घर की निर्देशिका बदल सकते हैं /home/penner
:
sudo usermod -d /home/penner penner
यह सुनिश्चित करना एक निर्देशिका है, और यह कि उपयोगकर्ता के पास पहुँच है
यदि (या एक बार) नाम दोनों हैं /home/penner
, तो आपको यह भी सुनिश्चित करना चाहिए कि उपयोगकर्ता की अपनी घर निर्देशिका तक पहुँच हो। चलाएँ:
ls -ld /home/penner
आपको कुछ ऐसा दिखना चाहिए जो ऐसा दिखता है (हालाँकि तारीख और समय अलग होगा):
drwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner
यदि इसके बजाय drwxr-xr-x
, आपके पास कुछ ऐसा है जो इसके बजाय शुरू होता -
है d
, तो आपने एक निर्देशिका के बजाय एक फ़ाइल बनाई। फ़ाइल को हटा दें और इसके बजाय एक निर्देशिका बनाएं।
यदि पहले के बजाय penner
आपके पास कुछ और है, तो उपयोगकर्ता अपनी होम डायरेक्टरी के मालिक नहीं हैं, इसलिए उन्हें अपना बनाएं:
sudo chown penner /home/penner
यदि इसके बजाय drwxr-xr-x
अगले तीन वर्णों में डैश हैं d
, तो उपयोगकर्ता की वहां पूरी पहुंच नहीं है। इसे निम्नानुसार ठीक करें:
sudo chmod u+rwx /home/penner
( penner
इस आदेश चलाने में सक्षम है अगर वे अपने घर निर्देशिका के मालिक हैं, इसलिए यदि आप चाहें, तो आप के रूप में इस चला सकते हैं: sudo -u penner u+rwx /home/penner
)
अन्य उपयोगकर्ताओं को सुनिश्चित करना है कि कंबल लिखने की पहुंच नहीं है
यदि इसके बजाय drwxr-xr-x
, पिछले छह अक्षरों में w
एस के बजाय -
एस हैं, तो इसके अलावा उपयोगकर्ताओं के penner
पास penner
घर की निर्देशिका तक पहुंच हो सकती है । यह खतरनाक है (जब तक आप वास्तव में नहीं जानते कि आप क्या कर रहे हैं और इसे इस तरह से चाहते हैं और चीजों को सेट किया है तो यह समस्या नहीं होगी)। ठीक करना:
sudo chmod -R go-w /home/penner
अन्य चूक
कुछ अन्य बदलाव हैं जिन्हें आप करना चाहते हैं। उबंटू में डिफ़ॉल्ट रूप से (अर्थात, यदि आप adduser
एक ग्राफिकल टूल के साथ या उसके साथ एक उपयोगकर्ता खाता बनाते हैं , जो आपने नहीं किया है):
होम निर्देशिकाओं ने सभी के लिए अनुमतियों को पढ़ा और लिखा है, न कि केवल उनके स्वामित्व वाले उपयोगकर्ता के लिए। उपयोगकर्ता इसे बदल सकते हैं, या तो पूरे होम डायरेक्टरी के लिए या इसके अंदर किसी भी फाइल और उपनिर्देशिका के लिए। लेकिन अगर आप यह डिफ़ॉल्ट चाहते हैं, और आपके पास दूसरा और तीसरा r
और x
इन drwxr-xr-x
, रन नहीं है:
sudo chmod 755 /home/penner
( penner
इस आदेश चलाने में सक्षम है अगर वे अपने घर निर्देशिका के मालिक हैं, इसलिए यदि आप चाहें, तो आप के रूप में इस चला सकते हैं: sudo -u penner chmod 755 /home/penner
)
प्रत्येक उपयोगकर्ता का अपना समूह होता है, उपयोगकर्ता के समान नाम के साथ, और यह उपयोगकर्ता का प्राथमिक समूह होता है। उनके घर की निर्देशिका इस समूह के स्वामित्व में है। दूसरे के अर्थ penner
में है drwxr-xr-x 43 penner penner 4096 2012-07-03 06:41 /home/penner
। इस डिफ़ॉल्ट को तोड़ना ठीक है, यदि आप जानते हैं कि आप क्या कर रहे हैं । लेकिन अगर यह चीजों को अलग तरीके से करने का आपका इरादा नहीं है, तो आपको यह सुनिश्चित करना चाहिए कि penner
उपयोगकर्ता के लिए कुछ संभावित प्राथमिक समूह पहचानकर्ता, या उपयोगकर्ता के होम डायरेक्टरी पर समूह के मालिकों को सुरक्षा समस्याओं का सामना करना पड़ सकता है।
भागो groups penner
। ( man groups
अधिक जानकारी के लिए देखें ।) आपको कुछ इस तरह से देखना चाहिए:
penner : penner adm dialout cdrom plugdev lpadmin sambashare
चिंता मत करो अगर यह काफी पसंद नहीं है। मैं जल्द ही मिल जाएगा। इसके बजाय, पहले शब्द को देखें :
। यह उपयोगकर्ता के प्राथमिक समूह का नाम है। यह मानते हुए कि आप इसे चाहते हैं penner
, सुनिश्चित करें कि यह है। यदि यह नहीं है, तो इसे बदलें:
sudo usermod -g penner penner
यदि आपको यह कहते हुए एक त्रुटि मिलती है कि समूह penner
मौजूद नहीं है, तो आपको इसे इस कमांड के साथ बनाना होगा (और फिर उपरोक्त कमांड को फिर से चलाना होगा):
sudo addgroup penner
man addgroup
अधिक जानकारी के लिए देखें । (यदि आप चाहें, तो आप वैकल्पिक रूप groupadd
से समूह बनाने के लिए कमांड का उपयोग कर सकते हैं।)
जब आप दौड़ते हैं groups penner
, तो आप मेरे से बहुत कम समूहों की सूची प्राप्त कर सकते हैं penner : penner adm dialout cdrom plugdev lpadmin sambashare
। डेस्कटॉप उपयोगकर्ताओं के लिए, adm
, dialout
, cdrom
, plugdev
, lpadmin
, और sambashare
क्षमताओं डेस्कटॉप उपयोगकर्ताओं को आम तौर पर होना चाहिए कि प्रदान करते हैं। इसलिए, जब तक आपके पास अन्यथा करने का कोई कारण नहीं है, penner
इन समूहों में होना चाहिए। हालाँकि, ये प्राथमिक समूह नहीं हैं , इसलिए इन्हें अलग तरह से सेट किया जाता है। मान penner
लेना इन समूहों में से किसी में नहीं है और आप penner
उन सभी में रहना चाहते हैं, इस कमांड को चलाएं:
sudo usermod -a -G adm,dialout,plugdev,lpadmin,sambashare penner
यदि आप रुचि रखते हैं, तो यहां उन सभी समूहों का मतलब है:
(स्रोत: विशेषाधिकार , उबंटू प्रलेखन विकी में।)
उपयोगकर्ता को व्यवस्थापक बनाना
यदि आप penner
एक प्रशासक नहीं बनना चाहते हैं , तो आपको शायद कुछ और करने की आवश्यकता नहीं है। यदि penner
आप एक व्यवस्थापक हैं, तो आप देख सकते हैं groups penner
। यदि न तो सूचीबद्ध है admin
और न ही कोई प्रशासक है।sudo
penner
यदि आप penner
एक व्यवस्थापक बनना चाहते हैं , तो penner
इनमें से जो भी मौजूद है , उसमें जोड़ें । (आप penner
दोनों को जोड़ सकते हैं , यदि वे दोनों मौजूद हैं।) आप इन दोनों आदेशों को अलग-अलग चलाकर पूरा कर सकते हैं - यदि कोई भी सफल होता है, तो आपने penner
एक प्रशासक बनाया है :
sudo usermod -a -G admin penner
sudo usermod -a -G sudo penner
- दो समूहों के कारण, उबंटू 12.04 एलटीएस से पहले, प्रशासक
admin
समूह में थे । Ubuntu 12.04 LTS से शुरू होकर, प्रशासक sudo
समूह में हैं। लेकिन यदि आपका 12.04 LTS सिस्टम पिछली रिलीज़ से अपग्रेड किया गया है (और यह बाद में Ubuntu रिलीज़ पर लागू होना चाहिए, जैसे कि 12.10 जब यह बाहर आता है, जो Ubuntu 11.10 या उससे पहले से अपग्रेड किया जाता है), तो बैकवर्ड संगतता के लिए, प्रशासक दोनों के सदस्य हैं sudo
और admin
। आम तौर पर, अगर इनमें से कोई एक समूह प्रशासनिक क्षमताओं को प्रदान नहीं करता है, तो यह बस अस्तित्व में नहीं है, इसलिए उपरोक्त दोनों कमांड (अलग-अलग, जैसा नहीं sudo usermod -a -G admin,sudo penner
) चल रहा है, आमतौर पर एक penner
व्यवस्थापक बनाने के लिए एक सुरक्षित और प्रभावी तरीका है ।