और अब, systemd जवाब।
इन सवालों और जवाबों को लगभग चार साल हो गए हैं, और दुनिया बदल गई है जबकि वे नहीं हैं। संस्करण 7 के बाद से, CentOS ने सिस्टमड का उपयोग किया है। उबंटू का उल्लेख प्रश्न और टिप्पणियों में किया गया है। संस्करण 15 के बाद से, Ubuntu ने सिस्टमड का भी उपयोग किया है।
हालाँकि, सिस्टम 5 के rc
तहत सिस्टम 5 लिपियों का उपयोग किया जा सकता है , यहाँ उत्तर में लिपियाँ बहुत ही कम हैं, यह कहने के लिए बहुत उप-स्तरीय है। एक blithely उपयोग करता है killall
, जिसकी ditmon प्रबंधन के लिए समस्याएं अच्छी तरह से जानी जाती हैं; और दूसरा रिकेटिक लॉक फाइल और पीआईडी फाइल लॉजिक की गड़बड़ी है जिसमें से कोई भी वास्तव में एक सेवा प्रबंधक के तहत आवश्यक नहीं है, क्योंकि सेवा प्रबंधक स्वयं dæmon प्रक्रियाओं का ट्रैक रखते हैं।
जैसा कि मैंने अन्यत्र कहा है, यदि आप इस सामान को सीखना शुरू कर रहे हैं और CentOS Linux संस्करण later या उसके बाद के या उबंटू लिनक्स संस्करण १५ या उसके बाद के हैं, तो rc
पहले स्थान पर सिस्टम ५ स्क्रिप्ट से शुरू न करें । Systemd इकाई फ़ाइलों के साथ शुरू करें।
कई Xvfb सेवाओं के लिए एक टेम्पलेट
सरल xvfb.service
xvfb के लिए systemd इकाई फ़ाइलों में पाया जा सकता https://www.centos.org/forums/viewtopic.php?f=48&t=49080#p208363 और कम से https://askubuntu.com/a/621256/43344 । हालांकि, जैसा कि मैंने उत्तरार्द्ध में उल्लेख किया है, एक टेम्पलेटेड दृष्टिकोण भी ले सकता है:
[यूनिट]
विवरण = प्रदर्शन% I के लिए वर्चुअल फ्रेम बफर एक्स सर्वर
= Network.target के बाद
[सर्विस]
ExecStart = / usr / bin / Xvfb% I-स्क्रीन 0 1280x1024x24
[इंस्टॉल]
WantedBy = multi-user.target
स्थानीय रूप से लिखित, गैर-सिस्टम गैर-पैकेज्ड के रूप में, सिस्टम-वाइड (प्रति उपयोगकर्ता के विपरीत) सेवाओं के लिए यूनिट फ़ाइल यह /etc/systemd/system/xvfb@.service
निश्चित रूप से जाती है।
सेवाओं को नियंत्रित करना
एक टेम्पलेट को वास्तविक नाम सेवा में, वांछित संख्या के साथ प्रदर्शित करता है। प्रदर्शन के लिए :99
, इसलिए, नाम का एक वास्तविक सेवा उदाहरण है xvfb@:99.service
।
- सेवा को बूटस्ट्रैप पर ऑटो-स्टार्ट के साथ सेट करें
systemctl enable xvfb@:99.service
।
- के साथ सेवा को शुरू करने की शुरुआत न करें
systemctl disable xvfb@:99.service
।
- सेवा को मैन्युअल रूप से प्रारंभ करें
systemctl start xvfb@:99.service
।
- सेवा को मैन्युअल रूप से बंद करें
systemctl stop xvfb@:99.service
।
- वर्तमान सेवा की स्थिति का विस्तार से निरीक्षण करें
systemctl status xvfb@:99.service
।
आगे की पढाई