मैं सिस्टम पर सेवा चलाने के लिए एक नया उपयोगकर्ता बनाना चाहता हूं, लेकिन इसके लिए /homeअन्य कॉन्फ़िगरेशन फ़ाइल नहीं रखना चाहता । जैसे पोस्टग्रे के लिए एक उपयोगकर्ता है, लेकिन इसकी कोई /homeनिर्देशिका नहीं है ।
मैं सिस्टम पर सेवा चलाने के लिए एक नया उपयोगकर्ता बनाना चाहता हूं, लेकिन इसके लिए /homeअन्य कॉन्फ़िगरेशन फ़ाइल नहीं रखना चाहता । जैसे पोस्टग्रे के लिए एक उपयोगकर्ता है, लेकिन इसकी कोई /homeनिर्देशिका नहीं है ।
जवाबों:
डिफ़ॉल्ट रूप से कमांड useradd होम डाइरेक्टरीज़ नहीं बनाता है, लेकिन डेमॉन के लिए मैं आपको सिस्टम विकल्प का उपयोग करने और शेल को न के बराबर बदलने की सलाह देता हूं ताकि कोई भी उक्त खाते से प्रवेश न कर सके (उदाहरण के लिए ssh में):
sudo useradd -r -s /bin/false USERNAME
आप सभी विकल्पों को देख सकते हैं man useraddऔर man groupaddयदि आप उपयोगकर्ता के लिए एक समूह भी बनाना चाहते हैं।
/sbin/nologinलॉगिन शेल के रूप में उपयोग कर रहा है , हालांकि, उपयोग /bin/falseकरने से कोई अंतर नहीं होगा।
कोशिश करो adduser --system --no-create-home USERNAMEया बस एक नज़र है, man adduserजो दावा करता है कि " useradd जैसे निम्न स्तर के उपकरणों के लिए फ्रेंडली फ्रंट एंड " है।
adduserबनाम है useradd, और useraddइन विकल्पों के साथ कमांड चलाने से कोई त्रुटि उत्पन्न नहीं हुई, लेकिन शेल के साथ खाता बनाया /bin/bash। "सावधान ग्राहक"।
मुझे कुछ इसी तरह की आवश्यकता थी - लॉगिन विशेषाधिकार के बिना एक नया उपयोगकर्ता और एक सिस्टम सेवा से बंधा हुआ। हालांकि, क्लॉसी का जवाब प्राथमिक समूह के साथ एक उपयोगकर्ता को 'नोग्रुप' बनाता है, जो वास्तव में वांछनीय नहीं था।
adduser --system --no-create-home --group USERNAMEउपयोगकर्ता के समान नाम के साथ एक सिस्टम समूह बनाता है और इसे उपयोगकर्ता के साथ प्राथमिक समूह के रूप में संबद्ध करता है। यह तब groups USERNAMEया id USERNAMEकमांड का उपयोग करके सत्यापित किया जा सकता है ।
होम निर्देशिका के बिना उपयोगकर्ता जोड़ने के लिए कमांड हैं,
useradd -M username
या
useradd --no-create-home username
या
adduser -M username
या
adduser --no-create-home username
इस आदेश का प्रयास करें:
sudo useradd vivek
यह आपके घर फ़ोल्डर बनाने के बिना एक उपयोगकर्ता बनाएगा /home/vivek
/home/vivekस्वचालित रूप से बनाया जाएगा।