मैं अपाचे उपयोगकर्ता जोड़ना चाहता हूं (www-data) को audio समूह। मैंने मैन पेज के लिए पढ़ा है useradd, लेकिन मुझे कोई भाग्य नहीं है । मैं चल रहा हूँ xubuntu 11.10. यहाँ मैं क्या कर रहा हूँ:
$ sudo useradd -G audio www-datauseradd: user 'www-data' already exists
अगर मैं बाहर छोड़ -G विकल्प, बैश, के लिए मदद की जानकारी प्रिंट करता है useradd:
$ sudo useradd audio www-dataUsage: useradd [options] LOGINOptions: -b, --base-dir BASE_DIR base directory for the home directory...
मैन पेज से मुझे यह स्पष्ट नहीं है कि इस काम को करने के लिए मुझे किन विकल्पों का उपयोग करना चाहिए ।
द useradd कमांड एक नया उपयोगकर्ता जोड़ने का प्रयास करेगा । चूंकि आपका उपयोगकर्ता पहले से मौजूद है, यह वह नहीं है जो आप चाहते हैं ।
इसके बजाय: किसी मौजूदा उपयोगकर्ता को संशोधित करने के लिए, जैसे उस उपयोगकर्ता को किसी नए समूह में जोड़ना, का उपयोग करें usermod कमान।
यह कोशिश करो:
sudo usermod -a -G groupName userName
द -a (संलग्न) स्विच आवश्यक है. अन्यथा, उपयोगकर्ता को किसी भी समूह से हटा दिया जाएगा, सूची में नहीं ।
द -G स्विच उपयोगकर्ता को असाइन करने के लिए अतिरिक्त समूहों की एक (अल्पविराम से अलग) सूची लेता है ।
सामान्य तौर पर (जीयूआई के लिए, या पहले से चल रही प्रक्रियाओं के लिए, आदि । ), उपयोगकर्ता लॉग आउट करने और वापस लॉग इन करने की आवश्यकता होगी उनके नए समूह को देखने के लिए जोड़ा गया । वर्तमान शेल सत्र के लिए, आप उपयोग कर सकते हैं newgrp:
मैं इसे एक उत्तर के रूप में पोस्ट कर रहा हूं क्योंकि मेरे पास टिप्पणी करने के लिए पर्याप्त प्रतिष्ठा नहीं है । जैसा कि @डीपेंडोलिनो ने उल्लेख किया है, इस आदेश के प्रभाव को जारी रखने के लिए:
sudo usermod -a -G groupName userName
...आपको फिर से लॉगआउट / लॉगिन करना होगा ।
हालाँकि, यदि आपको अपनी नई समूह सदस्यता का उपयोग शुरू करने के लिए शॉर्टकट की आवश्यकता है तुरंत (और आपके पास सही है sudo विशेषाधिकार) मुझे यह काम मिल गया है:
$ sudo su -# su [userName]$ groups
स्पष्टीकरण:
sudo su - आपको एक रूट शेल देगा
su [userName] आपको अपने उपयोगकर्ता के साथ एक शेल में लौटाता है
groups जब रन नाउ आपके द्वारा जोड़े गए समूह को दिखाएगा usermod -aG आदेश
मेरे मामले में मैं अपने उपयोगकर्ता को 'डॉकर' समूह जोड़ने की कोशिश कर रहा था
Ubuntu पर, के बाद से के रूप में लॉग इन करना root सक्षम नहीं है, में उपयोगकर्ता sudo समूह कुछ प्रतिबंधित आदेशों के लिए विशेषाधिकारों को बढ़ा सकता है । किसी भी प्रतिबंधित आदेश के साथ तैयार किया जाना चाहिए sudo विशेषाधिकार को बढ़ाने के लिए ।
sudo usermod -a -G समूहउपयोगकर्ता
मौजूदा उपयोगकर्ता जोड़ देगा user नाम के एक पूरक समूह के लिए group. उपयोगकर्ता का प्राथमिक समूह अपरिवर्तित रहेगा ।
किसी उपयोगकर्ता को किसी समूह में स्थायी रूप से जोड़ने के लिए, इस कमांड को चलाएं:
sudo usermod -a -G <groupname> <username>
फिर लॉग आउट करें और फिर से लॉग इन करें (या यदि आवश्यक हो तो रिबूट करें) ।
स्पष्टीकरण:
द usermod आदेश संशोधित करेगा /etc/group फ़ाइल उस समूह के लिए प्रासंगिक लाइन में निर्दिष्ट उपयोगकर्ता नाम सूचीबद्ध करने के लिए । यदि आप चलाते हैं grep <groupname> /etc/group, आपको आउटपुट में अपना उपयोगकर्ता नाम देखना चाहिए ।
लिनक्स में, प्रत्येक प्रक्रिया एक उपयोगकर्ता और समूहों को सौंपी जाती है, और कोई भी बाल प्रक्रिया उपयोगकर्ता और मूल प्रक्रिया के समूहों को विरासत में देती है । तो, इस परिवर्तन को प्रभावी करने और प्रचार करने के लिए, आपको लॉग आउट करना होगा और फिर से लॉग इन करना होगा (किस बिंदु पर /etc/group पढ़ा और इस्तेमाल किया जाता है) । वेलैंड पर, मैंने पाया है कि एक पूर्ण रिबूट आवश्यक है ।
यदि आप कमांड चलाते हैं groups, आप देख सकते हैं कि वर्तमान प्रक्रिया में अपेक्षित समूह हैं या नहीं ।