यदि कोई सेवा है enabled
, तो कहीं पर सिमिलिंक है
/etc/systemd/system
एक इकाई फ़ाइल के लिए, सबसे अधिक बार कहीं में
/lib/systemd/system
सहायक रूप से, जब आप enable
एक सेवा करते हैं, तो निर्मित लिंक और लक्ष्य के पूर्ण पथ को stdout में मुद्रित किया जाएगा।
सेवा को अक्षम करने से सिमलिंक नष्ट हो जाता है, इसलिए यूनिट फ़ाइल स्वयं प्रभावित नहीं होती है, लेकिन सिस्टम बूट होने पर सेवा अगले बूट पर लोड नहीं होती है /etc/systemd/system
।
हालाँकि, एक अक्षम सेवा को लोड किया जा सकता है, और यदि कोई सेवा उस पर निर्भर करती है तो उसे शुरू किया जाएगा ; enable
और disable
केवल इकाइयों के लिए ऑटो-स्टार्ट व्यवहार को कॉन्फ़िगर करते हैं, और राज्य को आसानी से ओवरराइड किया जाता है।
एक नकाबपोश सेवा वह है जिसकी इकाई फ़ाइल एक सिमलिंक है /dev/null
। यह सेवा को लोड करने के लिए "असंभव" बनाता है, भले ही इसके लिए किसी अन्य, सक्षम सेवा की आवश्यकता हो।
जब आप mask
सेवा करते हैं, तो मूल इकाई फ़ाइल को कहीं और से अछूता छोड़कर , एक सिमलिंक बनाया जाता /etc/systemd/system
है /dev/null
। जब आप unmask
किसी सेवा को हटाते हैं तो सिमलिंक हटा दिया जाता है।
हालाँकि, मैंने देखा है कि ये आदेश हमेशा सम्मानित नहीं होते हैं।
जब मैं अधिकांश सेवाओं को विफल करने की कोशिश करता हूं, तो यह विफल हो जाता है:
$ sudo systemctl mask bluetooth.service
Failed to execute operation: Invalid argument
बेशक, मैंने पहले सेवा बंद कर दी। @ अनवर का कहना है कि मास्किंग केवल गैर-महत्वपूर्ण सेवाओं के लिए ही संभव है।
एक नकाबपोश सेवा को अनमास्क करना, जब तक कि मैं इसे स्वयं नकाबपोश नहीं करता, तब तक वह भी (चुपचाप) विफल रहता है। मेरा मानना है कि ऐसा इसलिए है क्योंकि /dev/null
इस समय इस सेवा के लिए कोई यूनिट फ़ाइल नहीं है, सिवाय सिम्बल के , इस समय में /lib/systemd/system
:
$ file $(locate fuse.service)
/lib/systemd/system/fuse.service: symbolic link to /dev/null
$ sudo systemctl unmask fuse.service
$ systemctl status fuse
● fuse.service
Loaded: masked (/dev/null; bad)
Active: inactive (dead)
मुझे यह समस्या नहीं है
वास्तव में नकाबपोश सेवा X11-आम बेनकाब करने के लिए, मैं करने के लिए सिमलिंक को नष्ट करने के लिए किया था /dev/null
और sudo apt-get install --reinstall x11-common && sudo systemctl daemon-reload
। अब जब मैं इसे क्वेरी करता systemctl status x11-common
हूं तो मुझे लगता है कि सेवा में एक अच्छा हरा सर्कल है और लोड और सक्रिय (बाहर) है, हालांकि इसकी कोई इकाई फ़ाइल नहीं है।
आगे के संदर्भ के लिए कैसे सिस्टमक्टेल का उपयोग करें यह कुछ उपयोग हो सकता है।