समूह जोड़ने के बाद, 18.04 में लॉगआउट + लॉगिन पर्याप्त नहीं है?


18

डिफ़ॉल्ट डेस्कटॉप के साथ ubuntu 18.04 में, लॉगआउट / लॉगिन का व्यवहार बदल गया है:

पहले उबंटू प्रणाली पर, जब मुझे पता चलता है कि मुझे अपनी उपयोगकर्ता आईडी को कुछ समूह में जोड़ने की आवश्यकता है, तो यह पर्याप्त था

sudo adduser ludwig docker # adds me to group docker

और फिर मुझे समूह परिवर्तन को प्रभावी बनाने के लिए लॉगआउट और फिर से लॉगिन करना पड़ा।

मुझे लगता है कि Ubuntu 18.04 के साथ, समूह को जोड़ने और लॉग आउट करने और वापस अंदर आने के बाद, प्रभावी समूहों की सूची अभी भी अपरिवर्तित है।

वर्कअराउंड के रूप में मैंने सिस्टम को रिबूट किया, जो असुविधाजनक है (ग्रब में सही चयन करने और डिस्क एन्क्रिप्शन में फिर से प्रवेश करने की आवश्यकता है)।

  1. अब व्यवहार ऐसा क्यों है?
  2. क्या मैं रिबूटिंग में कुछ और कमी कर सकता हूं?

(मुझे पता है कि मैं लोकलहोस्ट में ssh कर सकता हूं और ssh सत्र में ही सही समूह प्राप्त कर सकता हूं। यह बहुत असुविधाजनक भी है।)


मैंने sudo usermod -a -G group user18.04 में परीक्षण किया और लॉग आउट किया और वापस इसमें काम किया।
टेरेंस

डिफ़ॉल्ट डेस्कटॉप के साथ भी?
लुडविग शुल्ज़

आपका मतलब है GNOME, Xubuntu, Kubuntu, आदि के बीच का अंतर? अगर आपका मतलब है कि गनोम डिफ़ॉल्ट है, तो नहीं, मैं गनोम नहीं चलाता। लेकिन कमांड डेस्कटॉप वातावरण की परवाह किए बिना समान होना चाहिए क्योंकि यह कोर पासवर्ड / समूह सामान है जो सभी डीई में समान होना चाहिए।
टेरेंस

ठीक है, मैंने अभी परीक्षण के लिए GNOME स्थापित sudo usermod -a -G groupname usernameकिया है , और वहां भी ठीक काम किया है। लॉग आउट और वापस और मेरा परिवर्तन वहाँ था।
टेरेंस

समझा। @ आप डिफ़ॉल्ट डेस्कटॉप का उपयोग नहीं कर रहे हैं। डिफ़ॉल्ट डेस्कटॉप का नाम "ubuntu" है। मुझे पता है कि यह सूक्ति पर आधारित है, लेकिन मैं समझता हूं कि "सूक्ति" एक और डेस्कटॉप है। एकता को सदृश करने के लिए "शुभांता" को बदल दिया गया।
लुडविग शुल्ज़

जवाबों:


8

आज्ञा loginctl terminate-user <user>ने मेरे लिए काम किया। ( <user>अपने उपयोगकर्ता नाम के साथ बदलें ) आपको शायद इसे तब नहीं चलाना चाहिए जब लॉग इन किया जाता है क्योंकि यह आपकी सभी प्रक्रियाओं को मार देगा।


Ubuntu 18.04 पर काम करने की पुष्टि की। Ps और grep से बहुत आसान है!
४D

सहमत, यह मेरे अपने समाधान से टाइप करने के लिए कम है। यह ubuntu 19.04 पर भी मदद करता है। मेरे स्वयं के समाधान के बजाय उत्कीर्ण और स्वीकृत।
लुडविग शुल्ज़

7

उबंटू 18.04 में डिफ़ॉल्ट डेस्कटॉप के "लॉगिंग आउट" होने पर, उपयोगकर्ता की कुछ प्रक्रियाएं तुरंत समाप्त नहीं होती हैं, लेकिन चारों ओर घूमती हैं। ये (किसी अन्य उपयोगकर्ता द्वारा देखे गए) हैं:

$ ps axu | grep ^ludwig
ludwig    26508  0.3  0.2  77052  8308 ?        Ss   23:32   0:00 /lib/systemd/systemd --user
ludwig    26509  0.0  0.0 261776  2968 ?        S    23:32   0:00 (sd-pam)
ludwig    26691  0.2  0.3 381288 12204 ?        S<l  23:32   0:00 /usr/bin/pulseaudio --start --log-target=syslog
ludwig    27352  0.0  0.0  49796  3756 ?        Ss   23:33   0:00 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only

जब इन प्रक्रियाओं से पहले वापस लॉग इन करना स्वेच्छा से बाहर निकलता है, तो कोई नया लॉगिन सत्र नहीं बनाया जाता है, लेकिन पुराने का पुन: उपयोग किया जाता है। यही कारण है कि नई समूह सदस्यता दिखाई नहीं दे रही है, यह अभी भी वही पुराना लॉगिन सत्र है।

रिबूटिंग से बचने के लिए एक वर्कअराउंड है ~ 20 सेकेंड्स लॉग आउट करने के बाद और उसके बाद ही वापस लॉग इन करें। लॉग आउट करने के बाद 10 से 20 सेकंड के बीच प्रक्रियाएं कहीं बाहर निकल जाती हैं।

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

ps axu | grep ^ludwig | awk '{print $2}' | xargs kill -9

ludwigअपने उपयोगकर्ता नाम के साथ बदलें । यह उन सभी प्रक्रियाओं को मारता है जो आप की हैं। केवल तभी उपयोग करें जब आप सुनिश्चित हों कि आपके सभी प्रोग्राम खुले हुए हैं।


यह मेरी समस्या थी। लेकिन लॉग आउट करने और प्रतीक्षा करने के बाद प्रक्रियाएं दूर नहीं हुईं। मुझे "systemd --user" प्रक्रिया को मारना था, और "sudo systemctl daemon-reexec" चलाना था। और सभी dbus प्रक्रियाओं को मारने के कारण dbus को systemd शिकंजा को फिर से शुरू करते हैं। नेटवर्क प्रबंधक को भी पुनरारंभ करने की आवश्यकता है। "systemctl पुनरारंभ नेटवर्क-मैनेजर" शायद वह सब कुछ पुनः आरंभ करें जो dbus / systemd पर निर्भर करता है
niknah

@ मुन्नाह ओह यह बुरा है। ऐसा लगता है कि आपके मामले में सिर्फ रिबूट करना आसान होगा। सभी को यह बताने के लिए धन्यवाद कि यह अधिक कठिन हो सकता है।
लुडविग शुल्ज़

@ मुन्ना मैं आज आप जैसी ही समस्या में भाग गया। लॉग आउट करने और प्रतीक्षा करने के बाद, कुछ प्रक्रियाएँ पूरी नहीं होंगी। मुझे एक वर्क अराउंड मिला और मैं इस उत्तर को अपडेट करूंगा।
लुडविग शुल्ज़

2

वर्तमान शेल में एक वर्कअराउंड "सु" को चलाने के लिए नए समूह को रिबूट किए बिना करना है।

जैसा कि मैंने कहा, इस चाल को प्रत्येक शेल पर लागू करना होगा। वह वैश्विक नहीं है।


यह adbusers उर्फ ​​के लिए उपयोगकर्ता को जोड़ने के बाद उपकरणों को नहीं पहचानने अदब को ठीक करने के लिए इस्तेमाल किया जा सकता है sudo usermod -a -G adbusers $USER। फिर आप कर सकते हैं su $USERऔर sudo adb kill-server && adb start-serverइस मुद्दे को ठीक करने के लिए
xdevs23
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.