कुछ उपयोगकर्ताओं को बंद करने, निलंबित करने आदि से रोकने का सबसे "उबंटू" तरीका क्या है?


21

एक पारंपरिक यूनिक्स प्रणाली पर, गैर-रूट उपयोगकर्ता ऐसा नहीं कर सकते। ऐसा क्या है जो उपयोगकर्ताओं को आधुनिक डेस्कटॉप वातावरण में यह क्षमता देता है और मैं इसे प्रति-उपयोगकर्ता या प्रति-समूह के आधार पर कैसे अक्षम करूंगा?

मैंने किसी को भी शट डाउन / सस्पेंड करने से रोकने के लिए एक शानदार तरीका देखा है , लेकिन आदर्श रूप से मैं कुछ उपयोगकर्ताओं को रोकने के लिए सक्षम होने से कुछ उपयोगकर्ताओं (जैसे, उन्हें एक निश्चित उपयोगकर्ता समूह से जोड़कर / हटाकर) को रोकने के लिए देख रहा हूं। , पुनः आरंभ, निलंबित।

जवाबों:


20

जैसा कि अन्य प्रश्न में उल्लेख किया गया है, आप पॉलिसीकीट के स्थानीय प्राधिकरण प्रणाली के माध्यम से इन कार्यों को नियंत्रित कर सकते हैं।

यदि आप /etc/polkit-1/50-local.d/restrict-shutdown.pklaसामग्री जैसी फ़ाइल बनाते हैं:

[Disable shutdown/etc for group restricted]
Identity=unix-group:restricted
Action=org.freedesktop.consolekit.system.stop;org.freedesktop.consolekit.system.restart;org.freedesktop.upower.suspend;org.freedesktop.upower.hibernate
ResultAny=no
ResultInactive=no
ResultActive=no

यह समूह के किसी भी सदस्य restrictedको मिलान किए गए कार्यों को करने से रोक देगा । वैकल्पिक रूप से, यदि आप अलग-अलग उपयोगकर्ताओं को प्रतिबंधित करना चाहते हैं, तो प्रतिस्थापित unix-group:restrictedकरें unix-user:user1;unix-user:user2;...। इस नीति से मेल नहीं खाने वाले किसी भी उपयोगकर्ता को डिफ़ॉल्ट व्यवहार के साथ समाप्त होना चाहिए।


अब 14.04.1 को काम नहीं करता है।
detly

0

इस फ़ाइल को रूट के रूप में बनाएँ और संपादित करें:

/etc/polkit-1/localauthority/50-local.d/power-management.pkla

निम्नलिखित को कॉपी और पेस्ट करें:

[Disable shutdown/restart for users jim jane]
Identity=unix-user:jim;unix-user:jane
Action=org.freedesktop.login1.reboot;org.freedesktop.login1.reboot-multiple-sessions;org.freedesktop.login1.power-off;org.freedesktop.login1.power-off-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no

[Disable suspend/hibernate for users jim jane]
Identity=unix-user:a;unix-user:vvpinker
Action=org.freedesktop.login1.suspend;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.