विभिन्न स्रोतों के आधार पर मैंने एक साथ सिल दिया है ~/.config/systemd/user/screenlock.service
:
[Unit]
Description=Lock X session
Before=sleep.target
[Service]
Environment=DISPLAY=:0
ExecStart=/usr/bin/xautolock -locknow
[Install]
WantedBy=sleep.target
मैंने इसका उपयोग करके सक्षम किया है systemctl --user enable screenlock.service
। लेकिन रिबूट करने के बाद, लॉग इन करना, निलंबित करना और फिर से शुरू करना ( systemctl suspend
ढक्कन के साथ और बंद करके दोनों का परीक्षण किया गया) स्क्रीन लॉक नहीं है और इसमें कुछ भी नहीं हैjournalctl --user-unit screenlock.service
। मैं क्या गलत कर रहा हूं?
चल रहे DISPLAY=:0 /usr/bin/xautolock -locknow
स्क्रीन उम्मीद के मुताबिक लॉक।
$ systemctl --version
systemd 215
+PAM -AUDIT -SELINUX -IMA -SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ +SECCOMP -APPARMOR
$ awesome --version
awesome v3.5.5 (Kansas City Shuffle)
• Build: Apr 11 2014 09:36:33 for x86_64 by gcc version 4.8.2 (nobody@)
• Compiled against Lua 5.2.3 (running with Lua 5.2)
• D-Bus support: ✔
$ slim -v
slim version 1.3.6
अगर मैं systemctl --user start screenlock.service
तुरंत स्क्रीन लॉक चलाता हूं और मुझे लॉग संदेश मिलता है journalctl --user-unit screenlock.service
, तो ExecStart
स्पष्ट रूप से सही है।
xautolock -locker slock &
एक ही फ़ाइल काम के साथ एक सिस्टम सेवा बनाना (जो slock
फिर से शुरू होने पर सक्रिय है):
# ln -s "${HOME}/.config/systemd/user/screenlock.service" /usr/lib/systemd/system/screenlock.service
# systemctl enable screenlock.service
$ systemctl suspend
लेकिन मैं $HOME
कई कारणों से बाहर के उपयोगकर्ता-विशिष्ट फ़ाइल को जोड़ना नहीं चाहता :
- उपयोगकर्ता सेवाओं को स्पष्ट रूप से सिस्टम सेवाओं से अलग किया जाना चाहिए
- सुपरयूजर विशेषाधिकारों का उपयोग किए बिना उपयोगकर्ता सेवाओं को नियंत्रित किया जाना चाहिए
- कॉन्फ़िगरेशन को आसानी से नियंत्रित किया जाना चाहिए
systemd-user
अभी भी बहुत परतदार है; सत्र के भाग के रूप में काम करने के लिए इसे प्राप्त करने के दृष्टिकोण से मैं समस्या को कम करने में मदद करूंगा; बस इतना ही कह सकता हूं।
/etc/systemd/system/
या उपयोग $HOME/.local/systemd/system
करने से बच सकते हैं /usr
। जैसा कि @jasonwryan ने उल्लेख किया है, उपयोगकर्ता सत्र अभी भी उत्पादन-गुणवत्ता नहीं माना जाता है; लेकिन वे करीब आ रहे हैं।