के माध्यम से पढ़ना man 5 systemd.unit
और man 5 systemd.target
हमें बताता है कि यूनिट फ़ाइलों का उपयोग लक्ष्य को परिभाषित करने के साथ-साथ बाकी सब सिस्टमड के लिए किया जाता है। कोई लक्ष्य बनाने के लिए विशेष रूप से कोई दस्तावेज नहीं है , इसलिए यह निर्धारित करना कठिन है कि इसे कैसे किया जाना चाहिए, लेकिन यह सेवा बनाने से बहुत अलग नहीं है।
जब आप अपने लक्ष्य बनाते हैं, आप करने की आवश्यकता होगी सिमलिंक को target.wants
systemd सेवाओं निर्देशिका से निर्देशिका। फिर आप अपना टारगेट सेट / बूट कर सकते हैं। यहां बताया गया है कि यह आपके उदाहरण को कैसे देख सकता है।
/etc/systemd/system/foo.target
यह लक्ष्य की इकाई फ़ाइल है। यदि graphical.target को एक उदाहरण के रूप में लिया जाता है, तो हम आधार के रूप में इसका उपयोग करके अपना लक्ष्य बना सकते हैं।
[Unit]
Description=Foobar boot target
Requires=multi-user.target
Wants=foobar.service
Conflicts=rescue.service rescue.target
After=multi-user.target rescue.service rescue.target
AllowIsolate=yes
सिस्टमड मैनपज से लिए गए विकल्पों की व्याख्या करने के लिए;
Description
- लक्ष्य का वर्णन करता है। आपको समझना चाहिए
Requires
- लक्ष्य की कठिन निर्भरता। अपनी सेवा शुरू करने से पहले आपको मूल प्रणाली को शुरू करने देना चाहिए
Wants
- नरम निर्भरता। लक्ष्य को शुरू करने के लिए इनकी आवश्यकता नहीं है ।
Conflicts
- यदि एक इकाई में किसी अन्य इकाई पर एक विरोधाभासी सेटिंग है, तो पूर्व को शुरू करना बाद के और इसके विपरीत बंद हो जाएगा।
After
- इन सेवाओं के बाद जूते
AllowIsolate
- वास्तव में आप और आपके पर्यावरण के लिए। विवरण मैनपेज में उपलब्ध हैंsystemd.unit(5)
/etc/systemd/system/foo.target.wants/
यह वह निर्देशिका है जहां आप अपने द्वारा बनाई गई सेवाओं को अपने लक्ष्य के लिए लिंक / आवश्यक करेंगे। यह Wants=
इकाई फ़ाइल में विकल्प के बराबर है । इस निर्देशिका को बनाएं और फिर सिमिलिंक बनाएं जैसे; ln -s /usr/lib/systemd/system/bar.service /etc/systemd/system/foo.target.wants/bar.service
। यह सिस्टम निर्देशिका में bar.service से आपके foo.target.wants निर्देशिका के लिए एक सिमलिंक बनाता है।
मुझे लगता है कि किसी सेवा के लिए एक इकाई फ़ाइल बनाना इस उत्तर के दायरे से बाहर है, और यह प्रश्न निश्चित रूप से अधिक प्रलेखित है, इसलिए मैं इसे अभी के लिए छोड़ दूँगा। जब आप अपनी यूनिट फ़ाइल बनाते हैं, तो इसे लक्ष्य में रखें। डायरेक्टरी में इसे जोड़ें या Wants=
निर्देश में जोड़ें ।