Ubuntu 16.04 में `` रीबूट` और `पॉवरऑफ़` बिना सुपर यूजर विशेषाधिकार के क्यों काम करता है?


10

वहाँ क्यों के बारे में सवालों की एक बहुत हैं shutdownऔर rebootरूट विशेषाधिकारों की आवश्यकता है। कई अच्छे उत्तर भी उपलब्ध हैं।

लेकिन कुछ ऐसा है जो मुझे समझ में नहीं आता है : यदि बहुउद्देशीय प्रणाली में रूट विशेषाधिकारों के बिना रिबूट या शटडाउन करने में सक्षम होना एक बहुत बुरा विचार है ... तो उबंटू 16.04 में यह क्यों संभव है?

जब मैं टाइप करता हूं poweroffया rebootटर्मिनल में होता है और हिट होता है Enter, तो यह वास्तव में बंद हो जाता है / रिबूट हो जाता है!

यह मेरे लिए ठीक है जब poweroffऔर rebootरूट विशेषाधिकारों की आवश्यकता नहीं है ... लेकिन क्यों करता है suspendकी जरूरत रूट विशेषाधिकारों? जब मैं suspendएक टर्मिनल में टाइप करता हूं और हिट Enterकरता हूं , तो यह सस्पेंड नहीं होता है, इसके बजाय यह अटक जाता है ... और जब मैं चलता हूं pm-suspend, तो इसकी आवश्यकता होती है sudo


यह पुराने संस्करणों में भी संभव हो सकता है, यदि आप इसे कॉन्फ़िगर करते हैं ( askubuntu.com/a/570969/158442 , उत्परिवर्ती सत्रों के लिए ध्यान दें)। हालांकि SystemD डिफ़ॉल्ट रूप से ऐसा करता है। आर्क लिनक्स पर भी देखा गया।
मुरु

जवाबों:


3

मेरे लिए, दोनों poweroff न ही rebootUbuntu 16.04 पर पासवर्ड की आवश्यकता है।

हालाँकि, ऐसा होने के लिए, मुझे "foo" नामक एक उपयोगकर्ता खाता बनाना होगा, उदाहरण के लिए, और फिर उस उपयोगकर्ता या स्वयं के रूप में लोकलहोस्ट के लिए ssh। जब मैं ऐसा करता हूं, तो मुझे खुद को प्रमाणित करने की जरूरत है। ऐसा लगता है कि कोई अन्य उपयोगकर्ता लॉग इन है।

उदाहरण के लिए, मुझे यह संदेश मिला:

User foo is logged in on sshd.
Please retry operation after closing inhibitors and logging out other users.
Alternatively, ignore inhibitors and users with 'systemctl reboot -i'.

वास्तव में, यह "स्मार्ट" है यह महसूस करने के लिए पर्याप्त है कि वास्तव में कोई अन्य उपयोगकर्ता लॉग इन है।

(मैं आपसे सहमत हूं कि हमेशा रूट के रूप में प्रमाणित करना अच्छा होगा। कभी-कभी, कोई अन्य उपयोगकर्ता लॉग इन नहीं होता है, लेकिन पृष्ठभूमि में एक महत्वपूर्ण प्रक्रिया किसी प्रकार की गणना करते हुए चल रही है।)

संपादित करें: बस खुद की कोशिश की। अगर मैं फू के रूप में लॉग इन हूं, तो मुझे खुद को (जो सुडो ग्रुप में है) प्रमाणित करने की जरूरत है। अगर मैं foo के साथ अपने आप को रिबूट करता हूं, तब भी मुझे लॉग इन करना है, मुझे टाइप करना हैsystemctl reboot -i पासवर्ड के बिना । मुझे लगता है कि अंतर यह है कि सिस्टम जानता है कि मैं सूडो ग्रुप में हूं।

संपादित करें 2: जैसा कि सेवेरस टक्स ने उल्लेख किया है, पिछले संपादन से systemctl suspend -iसमान व्यवहार systemctl reboot -iकिया गया है।


आह .. मैंने वो कोशिश नहीं की थी। BTW आपकी मशीन पर कमांड काम निलंबित कर देता है? मुझे यह सुनिश्चित करने की आवश्यकता है कि इसका बग
सेवरस टक्स

अगर मैं लोकलहोस्ट के पास जाता हूं और सस्पेंड करता हूं, तो मैं असफल हूं। मुझे "-बैश: सस्पेंड: एक लॉगिन शेल निलंबित नहीं कर सकता"।
रे

अगर मैं एक खिड़की खोलता हूं और "सस्पेंड" करने की कोशिश करता हूं, तो टर्मिनल विंडो जम जाती है। :-) अच्छा संकेत नहीं ... मुझे लगता है कि यह असंबंधित है। वैसे भी, पूछने के लिए धन्यवाद! मैंने कभी खुद कोशिश करने के बारे में नहीं सोचा लेकिन आपके सवाल ने मुझे जिज्ञासु बना दिया। मैं अभी भी सूडो के साथ रिबूट करने की आदत में हूँ ... इस सूक्ष्म बदलाव को नोटिस नहीं किया।
रे

धन्यवाद। जैसा कि आपने रिबूट के बारे में कहा, "सिस्टेक्ट्ल सस्पेंड-आई" भी अच्छी तरह से काम करता है। अपने जवाब में इसे जोड़ने पर विचार करें
सेवेरस टक्स

ठीक है! मुझे शायद यह सब एक संदेश के साथ जोड़ना चाहिए था, लेकिन हर बार जब मैंने कुछ करने की कोशिश की, तो यह एक रिबूट का कारण बना, इसलिए मुझे जो कुछ भी पोस्ट करना था, उसे सहेजना था ...
रे
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.