अप्राप्य-अपग्रेड के लिए कॉन्फ़िगरेशन विकल्पों को ओवरराइड करना


4

मेरे पास कई उबंटू सर्वर हैं जो मैं चाहता हूं कि सभी अपग्रेड स्वचालित रूप से लागू हों। मैं एक सरल स्क्रिप्ट का उपयोग apt-get update && apt-get upgradeकरता था, जो चलती थी, लेकिन यह बहुत मजबूत नहीं थी, इसलिए मैं unattended-upgradesइसके बजाय माइग्रेट करने की कोशिश कर रहा हूं , जो ऐसा करने के लिए आधिकारिक रूप से अनुशंसित तरीका प्रतीत होता है।

हालाँकि, मैं निम्नलिखित कार्यों को प्राप्त करने के लिए संघर्ष कर रहा हूँ:

  • हर दिन एक ईमेल कैसे प्राप्त करें ( unattended-upgradesहर दिन चलाता है)। फिलहाल मैं केवल ईमेल प्राप्त कर रहा हूं जब पैकेज अपग्रेड किए जाते हैं (मैं हर दिन एक ईमेल प्राप्त करना पसंद करता हूं जैसे कि मुझे पता है कि अगर ईमेल नहीं आता है, तो कुछ गलत हो गया है)।
  • सभी पैकेजों को अपग्रेड कैसे करें, न कि केवल सुरक्षा अपडेट के साथ।

आधिकारिक उबंटू प्रलेखन सहित सभी ट्यूटोरियल, मैं मौजूदा फाइलों को संपादित करने के लिए कह सकता हूं /etc/apt/apt.conf.d। हालाँकि, मैं अतिरिक्त फ़ाइलों का उपयोग कर विकल्पों को ओवरराइड करना पसंद करता हूं, आंशिक रूप से इसलिए कि मुझे बाद में 'मेंटेनर फ़ाइल से अलग' त्रुटि नहीं मिलती है और यह भी क्योंकि इससे कॉन्फ़िगरेशन प्रबंधन और संस्करण नियंत्रण में सभी ओवरराइड को रखना आसान हो जाता है।

क्या इस तरह से सभी कॉन्फ़िगरेशन विकल्पों को ओवरराइड करना संभव है? मैंने यह करने की कोशिश की है और पाया है कि कुछ ओवरराइड काम करते हैं जबकि अन्य नहीं करते हैं।

मेरी वर्तमान फ़ाइलें ओवरराइड होती हैं /etc/apt/apt.conf.d/99zz-overrides(यह सुनिश्चित करने के लिए नाम दिया गया है कि इसे अंतिम बार पढ़ा गया है) और इसमें निम्नलिखित शामिल हैं:

Unattended-Upgrade::Mail "hello@example.org";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

मैंने और कुछ नहीं बदला है /etc/apt/apt.conf.d


यदि आपके पास सेटअप सूचना रूट ईमेल पर है, तो इसका आउटपुट क्या है cat /var/mail/root?
अबू-अहमद अल-खातिरी

APT::Periodic::Enable "1";अगर आपको अन्यथा सेट नहीं करना है, तो आपको इसकी आवश्यकता भी हो सकती है
Hal Jarrett

@ abu-ahmedal-khatiri ईमेल स्वचालित रूप से मशीन से आगे बढ़ जाती है, इसलिए इसमें कुछ भी नहीं है /var/mail/root
प्रातः

आपके पास क्या मेल एप्लिकेशन है? एक sendemailपैकेज या apticronआपके लिंक पर एक पैकेज की तरह!
अबू-अहमद अल-खातिरी

1
समस्या आउटगोइंग ईमेल के साथ नहीं है, जो unattended-upgradesईमेल भेजने पर ठीक काम करती है । जिन मुद्दों पर मैं जा रहा हूं उनमें से unattended-upgradesएक दैनिक ईमेल भेजने के लिए है।
प्रिविंग

जवाबों:


1

इसलिए यदि आप चाहते हैं:

  • का उपयोग करें unattended-upgrades
    और
  • अपने व्यवहार को बदलने के लिए
    और
  • unattended-upgradesअपने अंदर पैकेज स्क्रिप्ट को बदलने के लिए नहीं

(इसलिए मूल रूप से आपका केक है और इसे भी खाएं ;-) )

तुमको करना होगा:

यदि ईमेल खाली है: कुछ नहीं हुआ, अन्यथा आपके पास लॉग होगा इसलिए सभी खाली और पूर्ण ईमेल एक साथ हैं जो आपने मांगे थे।


या क्या मैं गलत समझ रहा हूं कि आप यहां क्या करने की कोशिश कर रहे हैं?
फाबबी

मैं जो करना चाहता हूं, उसके द्वारा उपयोग किए गए विकल्पों (जो पैकेज अनुरक्षक द्वारा प्रदान किए गए हैं) को ओवरराइड करता है unattended-upgrades, उसी तरह जैसे कि मैं सॉफ्टवेयर के अन्य टुकड़ों जैसे
नगीनक्स

जब तक आप ऊपर कार्यप्रणाली का उपयोग नहीं करते तब तक आप इसकी कॉन्फिग फाइलों को बदले बिना ऐसा नहीं कर सकते। यदि आप उपरोक्त का उपयोग नहीं करते हैं, तो unattended-upgradesपैकेज का अपग्रेड मैन्युअल हस्तक्षेप के लिए कह सकता है । यदि यह स्वीकार्य है, तो मैं अपना उत्तर बदल सकता हूं। यदि यह स्वीकार्य नहीं है, तो उपरोक्त सबसे अच्छा मैं कर सकता हूं।
फाबबी

1
उस स्थिति में ऐसा लगता है कि unattended-upgradesमेरे लिए नहीं है। पैकेज द्वारा आपूर्ति की गई फ़ाइलों को संपादित करना कॉन्फ़िगरेशन प्रबंधन और बाद के उन्नयन के लिए एक दुःस्वप्न है और मुझे अतीत में (जैसे sshd के साथ) जला दिया गया है।
pwaring

जैसा मैंने कहा: आपको unattended-upgradesअपने मूल स्क्रिप्ट का उपयोग करने या वापस जाने और इसे और अधिक मजबूत बनाने के लिए उपयोग करने की आवश्यकता होगी । (जैसा कि यह एक प्रश्नोत्तर साइट है: यह वह सारी जानकारी है जो मेरे पास इतनी सारी जानकारी है जिसकी मैं आपूर्ति कर सकता हूं) @ उत्तर प्रश्न संपादित किया गया
Fabby

0

Https://gist.github.com/roybotnik/b0ec2eda2bc625e19eaf और https://wiki.debian.org/UnattendedUpgrades से ड्राइंग :

फ़ाइल /etc/apt/apt.conf.d/50unattended-upgradesमें इसके कॉन्फ़िगरेशन और प्रत्येक के स्पष्टीकरण के लिए उपलब्ध सभी विकल्प हैं।

हर बार इसे चलाने पर ईमेल भेजने का कोई विकल्प नहीं दिखता है, केवल जब उन्नयन या समस्याएं होती हैं। हालाँकि, आप सेट कर सकते हैं कि क्या आप सभी अपग्रेड के लिए ईमेल चाहते हैं, या केवल समस्याएं हैं (Unattended-Upgrade::MailOnlyOnError ["true"/"false"]

अपने प्रश्न के दूसरे भाग का उत्तर देने के लिए, आप उन स्रोतों को सेट कर सकते हैं जो अप्राप्य-अपग्रेड निम्नानुसार उपयोग करेंगे:

Unattended-Upgrade::Allowed-Origins {
        "${distro_id}:${distro_codename}-security";
//      "${distro_id}:${distro_codename}-updates";
//      "${distro_id}:${distro_codename}-proposed";
//      "${distro_id}:${distro_codename}-backports";
};

updatesया अन्य लाइनों को अनइंस्टॉल करके , आप पैकेज के उन संबंधित सेटों को स्वतः अपडेट कर देंगे।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.