मैं एक घटना पर सेवाओं के एक समूह को फिर से लोड करना ( पुनः आरंभ नहीं करना चाहता !) चाहता हूं ।
उदाहरण के लिए, यदि मैं अपने एसएसएल प्रमाणपत्रों को अद्यतन करता हूं, तो मैं चाहता हूं कि प्रत्येक सेवा जो उन्हें पुनः लोड ( nginx
और postfix
दिमाग में आए) का उपयोग करे। न तो मैं याद रखना चाहता हूं कि किसी दिए गए सर्वर पर कौन सी सेवाएं एसएसएल प्रमाणपत्र का उपयोग करती हैं। उन्हें कॉन्फ़िगर किए जाने पर उन्हें समूहीकृत करने के लिए पर्याप्त होना चाहिए।
दूसरी ओर, मैं .service
पैकेज के साथ प्रदान की गई फ़ाइलों को बदलने से बचना चाहूंगा , क्योंकि अपडेट के दौरान मैन्युअल हस्तक्षेप की आवश्यकता होगी।
मैं इसे कैसे पूरा करूं?
अनुरोध पर सेवाओं के एक समूह को रोकने के लिए एक विकल्प है , लेकिन यह उन्हें एक या दो या कई बार के लिए दुर्गम बना देगा - वे तय होने तक नीचे रह सकते हैं। मैं यह बर्दाश्त नहीं कर सकता।
.service
फ़ाइल संपादन को ओवरराइड करते हैं तो आप अद्यतन समस्या से बच सकते हैं। स्थापित फ़ाइल को बदलने के बजाय sudo systemctl edit foo.service
अपने परिवर्तनों को संग्रहीत करेगा । /etc/systemd/system/foo.service.d/override.conf
foo.service
/opt/letsencrypt/letsencrypt-auto renew --pre-hook "service nginx stop; service postfix stop; service squid stop" --post-hook "service nginx start; service postfix start; service squid start"
सेरेट्स की तैनाती करते हैं, लेकिन यहां भी सबसे अधिक स्वचालित नवीनीकरण के लिए एक पूर्व-हुक और पोस्ट-हुक भी है: सर्टिफॉगर में पोस्ट्सवे और प्रेस्वे कमांड हैं