Systemd पढ़ता है / etc / pm /…?


14

क्या systemdस्क्रिप्ट पढ़ने और निष्पादित करने वाली प्रणालियों का उपयोग किया जाता है /etc/pm/sleep.d/?

मैं जवाब देना शुरू कर रहा हूं कि systemdइन लिपियों को नजरअंदाज कर दिया जाए। यदि यह सच है तो प्रतिस्थापन क्या है?

अपडेट: man systemd-sleepराज्यों की स्क्रिप्ट को जोड़ा जा सकता है /lib/systemd/system-sleep/। मेरे लिए विवरण अपर्याप्त थे लेकिन मैंने एक आर्क विकी उदाहरण के संशोधन की कोशिश की और बनाया /lib/systemd/system-sleep/root-resume.service

[Unit]
Description=Local system resume actions
After=suspend.target

[Service]
Type=simple
ExecStart=/bin/systemctl restart network-manager.service

[Install]
WantedBy=suspend.target

मेरा इरादा नेटवर्क-प्रबंधक को फिर से शुरू करने के बाद फिर से शुरू करना है क्योंकि कभी-कभी यह काम नहीं कर रहा है।

यह मैं क्या चाहता हूँ करने के लिए प्रतीत नहीं होता है।


मैंने पाया कि यदि आप sudo pm-suspendcmdline से टाइप करते हैं तो /etc/pm/sleep.d स्क्रिप्ट अभी भी चलेगी । बस systemd अपने वर्कफ़्लो से इसका उपयोग नहीं करेगा।
टोमोफूमी

जवाबों:


13

/etc/pm/config.d|power.d|sleep.dसिस्टम के तहत लिपियों को अनदेखा किया जाता है। इसके बजाय एक सिस्टमड "यूनिट" (सेवा) बनाई और सक्षम होनी चाहिए।

नींद से सिस्टम के फिर से शुरू होने के बाद नेटवर्किंग शुरू करने के लिए मैंने फ़ाइल बनाई /lib/systemd/system/root-resume.service:

[Unit]
Description=Local system resume actions
After=suspend.target

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager.service

[Install]
WantedBy=suspend.target

फिर मैंने सेवा को सक्रिय कर दिया sudo systemctl enable root-resume.service। सेवा को सक्षम करना फ़ाइल के लिए एक प्रतीकात्मक लिंक बनाता है/etc/systemd/system/suspend.target.wants/

man systemd-sleepसेवा में रखी गई फ़ाइलों के विपरीत /lib/systemd/system-sleep/अनदेखी की जाती है।


हां, वास्तव में यही कारण था कि सिस्टम के साथ ubuntu चलाने वाले लोगों के लिए "सस्पेंड नेटवर्क के बाद पुनः आरंभ" स्क्रिप्ट काम नहीं कर रहे थे।
neo1691

इसे बनाया जाना चाहिए /etc/systemd/system/root-resume.service। आपको फ़ाइल प्रबंधक के तहत कभी भी फ़ाइलों को संशोधित नहीं करना चाहिए क्योंकि वे पैकेज मैनेजर द्वारा प्रबंधित किए जाते हैं, उन्नयन पर cruft और संभावित टूटने से बचने के लिए, सरलीकरण बैकअप का उल्लेख नहीं करने के लिए।
21

2

नहीं, और न ही उन में /usr/lib/pm-utils/sleep.d। लेकिन यह /lib/systemd/system-sleep/निष्पादन योग्य बिट्स सेट के साथ सभी स्क्रिप्ट (सेवा फ़ाइलों को नहीं) चलाता है ।

यहाँ शाम-शक्तियाँ कॉल करने के लिए एक उदाहरण दिया गया है, जिससे संशोधित किया गया है /usr/lib/pm-utils/sleep.d/00powersave

#!/bin/sh

# do not run pm-powersave on ARM during suspend; the 1.5 seconds that it takes
# to run it don't nearly compensate the potentially slightly slower suspend
# operation in low power mode
ARCH=`uname -m`

case $1 in
    pre)  [ "$ARCH" != "${ARCH#arm}" ] || pm-powersave false ;;          
    post) pm-powersave ;;
esac
exit 0

$ 1 फिर से शुरू पर "पोस्ट" है, अन्यथा "पूर्व"। दोनों मामलों में $ 2 में "सस्पेंड", "हाइबरनेट", या "हाइब्रिड-स्लीप" शामिल हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.