Gentoo के संस्थापक से लिनक्स की मूल बातें। भाग 3 (3/4): लिनक्स खातों का प्रबंधन

लिनक्स शुरुआती ट्यूटोरियल श्रृंखला के तीसरे भाग की निरंतरता उपयोगकर्ता और समूह प्रबंधन के मूल तत्व

Gentoo के संस्थापक से लिनक्स मूल बातें नेविगेशन:

भाग I:
  1. BASH, नेविगेशन की मूल बातें
  2. फ़ाइलों और निर्देशिकाओं का प्रबंधन करें
  3. लिंक और फ़ाइलों और निर्देशिकाओं को हटाना
  4. ग्लोब लुक देता है
भाग II:
  1. नियमित अभिव्यक्ति
  2. फ़ोल्डर असाइनमेंट, फ़ाइल खोज
  3. प्रक्रिया प्रबंधन
  4. पाठ प्रसंस्करण और पुनर्निर्देशन
  5. कर्नेल मॉड्यूल
भाग III
  1. प्रलेखन
  2. एक्सेस मॉडल
  3. खाता प्रबंधन
  4. पर्यावरण की स्थापना

लिनक्स खाता प्रबंधन


मिलना / etc / passwd


इस खंड में, हम लिनक्स खाता प्रबंधन तंत्र को पेश करेंगे और / etc / passwd फ़ाइल के साथ शुरू करेंगे, जो सिस्टम पर मौजूद सभी उपयोगकर्ताओं को परिभाषित करता है। आप कम / etc / passwd लिखकर अपनी / etc / passwd फ़ाइल देख सकते हैं। / Etc / passwd में प्रत्येक पंक्ति एक उपयोगकर्ता खाते को परिभाषित करती है। यहाँ मेरे / etc / passwd से एक उदाहरण दिया गया है:

drobbins:x:1000:1000:Daniel Robbins:/home/drobbins:/bin/bash

जैसा कि आप देख सकते हैं, एक पंक्ति में बहुत अधिक जानकारी नहीं है। उनमें से प्रत्येक में ":" द्वारा अलग किए गए कई फ़ील्ड शामिल हैं। पहला फ़ील्ड उपयोगकर्ता नाम (drobbins) के लिए जिम्मेदार है, दूसरे फ़ील्ड में "x" है। लीगेसी लिनक्स सिस्टम पर, दूसरे क्षेत्र में प्रमाणीकरण के लिए एन्क्रिप्टेड पासवर्ड होता है, लेकिन वास्तव में, अब सभी लिनक्स सिस्टम इस जानकारी को किसी अन्य फ़ाइल में संग्रहीत करते हैं। तीसरा क्षेत्र एक विशेष उपयोगकर्ता के साथ जुड़े संख्यात्मक उपयोगकर्ता पहचानकर्ता के लिए जिम्मेदार है, और चौथा क्षेत्र इस उपयोगकर्ता को एक विशिष्ट समूह के साथ जोड़ता है; जल्द ही हम देखेंगे कि समूह 1000 को कहां परिभाषित किया गया है। पांचवें क्षेत्र में खाते का पाठ विवरण शामिल है, हमारे मामले में यह उपयोगकर्ता नाम है। छठा क्षेत्र उपयोगकर्ता की होम निर्देशिका को परिभाषित करता है, सातवां - उपयोगकर्ता के स्टार्टअप शेल को सेट करता है, जो उपयोगकर्ता के लॉग में लॉग होने पर स्वचालित रूप से शुरू हो जाएगा।

/ etc / पासवार्ड, टिप्स एंड ट्रिक्स


आपने शायद देखा कि सिस्टम में बहुत अधिक उपयोगकर्ता खाते हैं जो वास्तव में सिस्टम में लॉग इन करने वालों की तुलना में / etc / passwd में परिभाषित हैं। ऐसा इसलिए है क्योंकि विभिन्न लिनक्स घटक सुरक्षा बढ़ाने के लिए कुछ खातों का उपयोग करते हैं। आमतौर पर, ऐसे सिस्टम खातों में 100 से कम एक पहचानकर्ता (यूआईडी) होता है, और उनमें से कई स्टार्टअप शेल के रूप में / बिन / झूठे सेट होते हैं। चूँकि यह प्रोग्राम एक्सिट के अलावा कुछ भी नहीं करता है और एक त्रुटि कोड देता है, यह प्रभावी रूप से लॉगिन के लिए नियमित खातों के रूप में इन खातों के उपयोग को रोकता है - अर्थात वे केवल आंतरिक उपयोग के लिए अभिप्रेत हैं।

/ आदि / छाया


तो, उपयोगकर्ता खाते स्वयं / etc / passwd में परिभाषित होते हैं। लिनक्स सिस्टम, / etc / passwd के अलावा , इसके साथी फ़ाइल / etc / छाया में होते हैं । यह / etc / passwd के विपरीत, केवल सुपरयुसर द्वारा पढ़ा जा सकता है और इसमें कूटशब्द की कूटबद्ध जानकारी होती है। / आदि / छाया से नमूना लाइन पर एक नज़र डालें:

drobbins:$1$1234567890123456789012345678901:11664:0:-1:-1:-1:-1:0

प्रत्येक पंक्ति किसी विशेष खाते के लिए पासवर्ड की जानकारी को परिभाषित करती है, इसमें फ़ील्ड "": साइन द्वारा अलग किए जाते हैं। पहला फ़ील्ड विशिष्ट उपयोगकर्ता खाते को परिभाषित करता है जिसमें यह "छाया" प्रविष्टि मेल खाती है। दूसरे फ़ील्ड में एन्क्रिप्टेड पासवर्ड है। शेष फ़ील्ड नीचे दी गई तालिका में वर्णित हैं:

फ़ील्ड 3 - पासवर्ड बदलने तक 01/01/1970 से दिनों की संख्या
फ़ील्ड 4 - पासवर्ड बदलने के लिए अनुमति देने से पहले दिनों की संख्या ("0" - "किसी भी समय परिवर्तन")
फ़ील्ड 5 - सिस्टम से पहले दिनों की संख्या उपयोगकर्ता को पासवर्ड बदलने के लिए मजबूर करती है ("-1" - "कभी नहीं")
फ़ील्ड 6 - पासवर्ड के समाप्त होने से पहले के दिनों की संख्या जब उपयोगकर्ता को इस बारे में चेतावनी मिलती है ("-1" - "चेतावनी न दें")
फ़ील्ड 7 - पासवर्ड समाप्त होने के बाद की दिनों की संख्या, जिसके बाद खाता स्वचालित रूप से सिस्टम द्वारा अक्षम हो जाएगा ("-1" - "डिस्कनेक्ट न करें")
फ़ील्ड 8 - इस खाते के बंद होने के बाद जितने दिन बीत चुके हैं ("-1" - "यह खाता सक्षम है")
क्षेत्र 9 - भविष्य के उपयोग के लिए आरक्षित

/ आदि / समूह


अब / etc / group फाइल पर एक नज़र डालें, जो लिनक्स सिस्टम पर समूहों को परिभाषित करता है। यहाँ से एक उदाहरण पंक्ति है:

drobbins:x:1000:

/ Etc / समूह फ़ाइल के फ़ील्ड का प्रारूप इस प्रकार है: पहला फ़ील्ड समूह के नाम को परिभाषित करता है, दूसरा फ़ील्ड अवशिष्ट पासवर्ड फ़ील्ड है, जो अब केवल x आरक्षित है, और तीसरा फ़ील्ड किसी विशेष समूह के लिए संख्यात्मक पहचानकर्ता निर्धारित करता है। चौथा क्षेत्र (जो ऊपर के उदाहरण में खाली है) समूह के सभी सदस्यों को परिभाषित करता है।

याद रखें कि / etc / passwd से हमारी सैंपल लाइन में पहचानकर्ता 1000 के साथ समूह के लिए एक "लिंक" है। हम drobbins उपयोगकर्ता को drobbins समूह में रख सकते हैं, भले ही drobbins नाम चौथे क्षेत्र / etc / group में गायब है।

समूह नोट


समूहों के साथ उपयोगकर्ताओं के पत्राचार के बारे में ध्यान दें: कुछ प्रणालियों पर, प्रत्येक नया लॉगिन खाता एक ऐसे समूह से जुड़ा होता है, जिसका समान नाम (और आमतौर पर एक पहचानकर्ता) होता है। अन्य प्रणालियों पर, सभी लॉगिन खाते एक ही उपयोगकर्ता समूह के होंगे। इनमें से कौन सी विधि आपको चुननी है प्रत्येक उपयोगकर्ता के लिए एक उपयुक्त समूह बनाने से उन्हें अपने व्यक्तिगत समूह में केवल विश्वसनीय मित्रों को रखकर आसानी से अपनी पहुंच को नियंत्रित करने की अनुमति देने का लाभ मिलता है।

उपयोगकर्ताओं और समूहों का मैनुअल निर्माण


अब, मैं दिखाऊंगा कि उपयोगकर्ता और समूह के लिए खाते कैसे बनाएं। यह करने का सबसे अच्छा तरीका यह है कि सिस्टम में एक नया उपयोगकर्ता मैन्युअल रूप से जोड़ा जाए। सबसे पहले, सुनिश्चित करें कि आपका पसंदीदा संपादक आपके EDITOR पर्यावरण चर से मेल खाता है:

# echo $EDITOR
vim

अगर ऐसा नहीं है, तो आप EDITOR वैरिएबल को कुछ टाइप करके सेट कर सकते हैं:

# export EDITOR=/usr/bin/emacs
# vipw

आपका संपादक अब पहले से लोड किए गए / etc / passwd स्क्रीन के साथ लॉन्च किया जाना चाहिए। जब सिस्टम फाइल पासव्ड और ग्रुप बदलते हैं, तो vipw और vigr कमांड का उपयोग करना सुनिश्चित करें। उन्होंने सावधानियों को बढ़ा दिया है, आपकी फ़ाइलों को दूषित होने से बचाने के लिए।

संपादन / आदि / पासवार्ड


तो, आपके पास पहले से ही तैयार / आदि / पासवार्ड फ़ाइल है, अब निम्नलिखित पंक्ति जोड़ें:

testuser:x:3000:3000:LPI tutorial test user:/home/testuser:/bin/false

हमने केवल पहचानकर्ता 3000 के साथ उपयोगकर्ता "परीक्षक" को जोड़ा है। हमने उसे उसी पहचानकर्ता वाले समूह में परिभाषित किया है जिसे हमने अभी तक नहीं बनाया है। लेकिन यदि आवश्यक हो, तो हम इसे मौजूदा उपयोगकर्ता समूह में जोड़ सकते हैं। इस उपयोगकर्ता के पास एक टिप्पणी है कि "एलपीआई ट्यूटोरियल टेस्ट उपयोगकर्ता" कहते हैं, होम डायरेक्टरी "/ होम / टेस्टुसर" पर सेट है, और सुरक्षा कारणों से शेल "/ बिन / गलत" पर सेट है। यदि हम एक परीक्षण खाता नहीं बनाते हैं, तो हम कमांड शेल को "/ बिन / बैश" के रूप में स्थापित करेंगे। ठीक है, अब फ़ाइल सहेजें और बाहर निकलें।

संपादन / आदि / छाया


अब हमें इस उपयोगकर्ता के लिए / etc / छाया में एक प्रविष्टि जोड़ने की आवश्यकता है। ऐसा करने के लिए, टाइप करें vipw -s । हमेशा की तरह, आपको अपने पसंदीदा संपादक द्वारा बधाई दी जाएगी जिसमें / आदि / छाया फ़ाइल पहले से ही खुली है। अब मौजूदा उपयोगकर्ता खाते की लाइन की प्रतिलिपि बनाएँ (जिसके पास पासवर्ड है और जिसका रिकॉर्ड मानक सिस्टम खाता प्रविष्टियों से अधिक लंबा है)

drobbins:$1$1234567890123456789012345678901:11664:0:-1:-1:-1:-1:0

अपने उपयोगकर्ता नाम के साथ प्रतिलिपि की गई पंक्ति में उपयोगकर्ता नाम बदलें और सुनिश्चित करें कि सभी फ़ील्ड (विशेषकर पुराना पासवर्ड) आपकी आवश्यकता के अनुसार सेट हैं:

testuser:$1$1234567890123456789012345678901:11664:0:-1:-1:-1:-1:0

अब सहेजें और बंद करें।

पासवर्ड सेटिंग


आप कमांड लाइन पर लौट आएंगे। अब, अपने नए उपयोगकर्ता के लिए पासवर्ड सेट करने का समय आ गया है।

# passwd testuser
Enter new UNIX password: (enter a password for testuser)
Retype new UNIX password: (enter testuser's new password again)

संपादन / आदि / समूह


अब / etc / passwd और / etc / छाया तैयार हैं और यह ठीक से कॉन्फ़िगर / etc / group करने का समय है। ऐसा करने के लिए, टाइप करें:

# vigr

आप अपनी / etc / group फ़ाइल देखेंगे, जो संपादन के लिए तैयार है। इसलिए, यदि आपने पहले से बनाए गए उपयोगकर्ता को मौजूदा समूह में जोड़ने का निर्णय लिया है, तो आपको / etc / group में एक नया समूह बनाने की आवश्यकता नहीं है। यदि यह स्थिति नहीं है, तो आपको इस उपयोगकर्ता के लिए एक नया समूह जोड़ने की आवश्यकता है, निम्नलिखित पंक्ति दर्ज करें:

testuser:x:3000:

अब सहेजें और बंद करें।

एक घर निर्देशिका बनाएँ


हम लगभग हो चुके हैं। वृषण होम डायरेक्टरी बनाने के लिए निम्नलिखित कमांड चलाएँ:

# cd /home
# mkdir testuser
# chown testuser:testuser testuser
# chmod o-rwx testuser

हमारी उपयोगकर्ता निर्देशिका लागू है और खाता उपयोग करने के लिए तैयार है। पहले ही लगभग हो चुका है। यदि आप इस खाते का उपयोग करने का इरादा रखते हैं, तो आपको स्टार्टअप शेल को / bin / bash में बदलने के लिए vipw का उपयोग करना होगा, ताकि उपयोगकर्ता लॉग इन कर सके।

खाता प्रशासन उपयोगिताएँ


आप पहले से ही जानते हैं कि नए खातों और समूहों को मैन्युअल रूप से कैसे जोड़ा जाए, अब आइए लिनक्स के तहत खातों के प्रबंधन के लिए विभिन्न समय-बचत उपयोगिताओं को देखें। कुछ सीमाओं के कारण, हम इन कमांडों का वर्णन करने वाले कई विवरणों पर विचार नहीं करेंगे। याद रखें - यदि आप इसके मैन पेज को देखते हैं तो आप हमेशा एक टीम के बारे में अधिक जानकारी प्राप्त कर सकते हैं। यदि आप एलपीआईसी 101 परीक्षा लेने की योजना बनाते हैं, तो आपको इनमें से प्रत्येक टीम के साथ खुद को परिचित करने में अधिक समय बिताना चाहिए।

newgrp - डिफ़ॉल्ट रूप से, उपयोगकर्ता द्वारा बनाई गई किसी भी फ़ाइल को तुरंत उस समूह को सौंपा जाता है जिसमें वह / etc / passwd में परिभाषित होता है। यदि उपयोगकर्ता अन्य समूहों से संबंधित है, तो वह इस समूह का सदस्य बनने के लिए newgrp thisgroup टाइप कर सकता है। फिर, कोई भी नई बनाई गई फ़ाइलें इस समूह सदस्यता को प्राप्त कर लेंगी।
चेज - चेज कमांड का उपयोग / आदि / छाया में संग्रहीत पासवर्ड की समाप्ति सेटिंग्स को देखने और बदलने के लिए किया जाता है।
gpasswd - मूल समूह प्रबंधन उपयोगिता
groupadd / groupdel / groupmod - / etc / group में समूहों को जोड़ने / हटाने / बदलने के लिए उपयोग किया जाता है
useradd / userdel / usermod - / etc / passwd में उपयोगकर्ताओं को जोड़ने / हटाने / बदलने के लिए उपयोग किया जाता है। ये कमांड अन्य उपयोगी कार्य कर सकते हैं। अधिक जानकारी के लिए आदमी देखें।
pwconv / grpconv - पासवार्ड और समूह पुरानी शैली की फाइलों को नए शैडो पासवर्ड में बदलने के लिए उपयोग किया जाता है। वास्तव में, सभी लिनक्स सिस्टम पहले से ही छाया पासवर्ड का उपयोग करते हैं, इसलिए आपको इन आदेशों का उपयोग करने की आवश्यकता नहीं है।

अनुवाद को सामूहिक मन द्वारा notabenoid.com का उपयोग करके किया गया था। निम्नलिखित बेनॉइड उपयोगकर्ताओं (वर्णमाला के क्रम में) के लिए धन्यवाद: दयालु , nekjine , रिच । साथ ही अनुवाद की पूरी श्रृंखला के सर्जक, VBart

जारी रखने के लिए ...


लेखकों के बारे में


डैनियल रॉबिंस


डैनियल रॉबिंस जेंटू समुदाय के संस्थापक और जेंटो लिनक्स ऑपरेटिंग सिस्टम के निर्माता हैं। डैनियल अपनी पत्नी मैरी और दो ऊर्जावान बेटियों के साथ न्यू मैक्सिको में रहता है। वह फंटू के संस्थापक और प्रमुख भी हैं, और आईबीएम डेवलपरवर्क्स , इंटेल डेवलपर सेवाओं और सी / सी ++ उपयोगकर्ता जर्नल के लिए कई तकनीकी लेख लिखे हैं।

क्रिस हाउसर


क्रिस होसर 1994 से UNIX के समर्थक हैं, जब वे टेलर विश्वविद्यालय (इंडियाना, संयुक्त राज्य अमेरिका) में प्रशासकों की टीम में शामिल हुए, जहाँ उन्होंने कंप्यूटर विज्ञान और गणित में स्नातक की डिग्री प्राप्त की। फिर उन्होंने विभिन्न क्षेत्रों में काम किया, जिसमें वेब एप्लिकेशन, वीडियो एडिटिंग, UNIX ड्राइवर और क्रिप्टोग्राफ़िक सुरक्षा शामिल हैं। वर्तमान में संतरी डेटा सिस्टम पर काम करता है। क्रिस ने कई मुफ्त परियोजनाओं में भी योगदान दिया, जैसे कि गेंटू लिनक्स और क्लोजर, और द जॉय ऑफ क्लोजर के सह-लेखक।

एरन ग्रिफिस


आयरन ग्रिफ़िस बोस्टन में रहते हैं, जहाँ उन्होंने पिछले दशक में Hewlett-Packard पर काम कर रहे प्रोजेक्ट्स जैसे कि UNIX नेटवर्क ड्राइवरों के लिए Tru64, Linux, Xen और KVM वर्चुअलाइजेशन सुरक्षा प्रमाणीकरण और हाल ही में HP ePrint प्लेटफ़ॉर्म पर काम किया। प्रोग्रामिंग से अपने खाली समय में, एरॉन अपनी बाइक की सवारी करते हुए, बोस्टन की पेशेवर बेसबॉल टीम रेड सॉक्स के लिए चीयर करते हुए, प्रोग्रामिंग समस्याओं का सफाया करना पसंद करते हैं।

Source: https://habr.com/ru/post/In110012/


All Articles