सवाल एक समूह में रूट जोड़ना


मैं लिनक्स के लिए नया नहीं हूं, लेकिन यह अजीब व्यवहार है जो मैं अपने फेडोरा 15 बॉक्स पर देख रहा हूं। मैं सुपरसियर को एक समूह में जोड़ना चाहता हूं, कहूं, thisgroup

# usermod -a -G thisgroup root
# groups
# root bin daemon sys adm disk wheel
#

^^ thisgroup अनुपस्थित है। आश्चर्य की बात है, जब मैंने संपादन के बारे में सोचा था /etc/group, root वहां मौजूद था!

क्यों कोई भी groups मेरा नया जोड़ा नहीं दिखाया?


3
2017-07-04 19:28


मूल




जवाब:


के मैनपेज से groups आदेश:

Print  group memberships for each USERNAME or, if no USERNAME is speci‐
fied, for the current process (which may differ if the groups  database
has changed)

यह वास्तव में आपका मामला है: समूह डेटाबेस बदल गया है, लेकिन वर्तमान प्रक्रिया के लिए समूह सदस्यता अद्यतन नहीं की गई है। यदि आपने इसके बजाय समूह सदस्यता की पूछताछ की है root उपयोगकर्ता आपको सही परिणाम मिल गया होगा।

matteo@teomint:~$ sudo usermod -a -G test matteo
matteo@teomint:~$ groups
matteo adm dialout cdrom plugdev lpadmin admin sambashare
matteo@teomint:~$ groups matteo
matteo : matteo adm dialout cdrom plugdev lpadmin admin sambashare test

लंबी कहानी छोटी: वर्तमान प्रक्रिया के लिए, root का सदस्य नहीं है thisgroup अभी तक; आपको फिर से लॉगिन करना होगा।


6
2017-07-04 19:34



धन्यवाद। यह लॉग आउट और लॉग इन किए बिना काम नहीं करता था। - Maksim Dmitriev


आपको लॉगआउट करने की आवश्यकता है और फिर से - बिना किसी तर्क के groups कमांड उन समूहों को प्रिंट करता है जो वर्तमान प्रक्रिया है जो समूह डेटाबेस को बदलते समय बदलती नहीं है।

यदि तुम करो groups root तो आपको इसे उस संतोष के रूप में सूचीबद्ध करना चाहिए /etc/group फ़ाइल।


0
2017-07-04 19:33