मैं निष्क्रिय होने पर डेस्कटॉप को बंद करके बिजली बचाने की कोशिश कर रहा हूं। लेकिन कई डेस्कटॉप भी उनके मालिकों द्वारा एसएसएच के माध्यम से एक्सेस किए जाते हैं। मालिकों को मशीन पर स्विच करने में सक्षम करने के लिए एक वेकोलान समाधान तैनात किया गया है, लेकिन समस्या यह है कि एसएसएच कनेक्शन चालू होने के बावजूद 10 मिनट में मशीनें फिर से ऑटो-सस्पेंड हो जाएंगी।
मैं जो करने की कोशिश कर रहा हूं वह सक्रिय एसएसएच सत्रों को "गतिविधि" परिभाषाओं में शामिल करना है।
सवाल यह है कि क्या यह एक पुलकित नियम स्थापित करने के माध्यम से किया जा सकता है? क्या यह एक स्क्रिप्ट डालने के माध्यम से किया जा सकता है जो वास्तविक निलंबन से पहले चलता है, और यदि एसएसएच सत्र पाए जाते हैं तो इसे रद्द कर देता है? मुझे ऐसा करने का एक साफ कानूनी तरीका चाहिए। अगर ऐसा नहीं है, तो हैक करने के तरीके भी स्वागत योग्य हैं।
वर्तमान भोली हैसी समाधान: संपादित करें /usr/sbin/pm-suspend
:
#check for SSH sessions, and prevent suspending:
if [ "$(who | grep -cv "(:")" -gt 0 ]; then
echo "SSH session(s) are on. Not suspending."
exit 1
fi
यह उद्देश्य को पूरा करता है। लेकिन मुझे नहीं पता कि कोई अपडेट कब फ़ाइल को अधिलेखित कर देगा /usr/sbin/pm-suspend
। मुझे यह भी पता नहीं है कि यह कैसे अन्य सस्पेंड कार्यान्वयनों के साथ काम करेगा जैसे tuxonice।
[
यदि आप लिखते हैं तो आप इनवोकेशन को छोड़ सकते हैं if who | grep -qv :0; then
(यह मानते हुए कि आपके पास grep
जीएनयू जीआरईपी की तरह एक पॉसिक्स अनुरूप है )।
grep -cv :0
गुजरने के बजाय इसका उपयोग कर रहा हूंwc
?