अपडेट इंस्टॉल करने के बाद उपलब्ध संदेश को अपडेट करें


23

मैंने अभी अपने HTPC को 13.04 (का उपयोग करके do-release-upgrade) अपडेट किया है और लॉग इन करते समय मुझे "नया रिलीज़ उपलब्ध" संदेश मिलता है, जबकि वहाँ नहीं है जैसा कि मैंने अभी उन्नत किया है और उस संस्करण को चला रहा हूं।

me@mybox: ~$ssh htpc
me@htpc's password: 
Welcome to Ubuntu 13.04 (GNU/Linux 3.8.0-19-generic i686)

 * Documentation:  https://help.ubuntu.com/

New release '13.04' available.
Run 'do-release-upgrade' to upgrade to it.

इसलिए मैं 13.04 पर हूं, लेकिन मैं 13.04 में अपग्रेड कर सकता हूं। एक योजना की तरह लगता है। या नहीं।

मैंने एक ( apt-get updateऔर upgradeकुछ भी नया नहीं) किया है और मशीन को रिबूट किया है। यह संदेश अभी भी यहां क्यों है, और इसे ठीक करने की क्या आवश्यकता है?

अधिक जानकारी के लिए शायद:

htpc:~$ uname -a
Linux HTPC 3.8.0-19-generic #29-Ubuntu SMP Wed Apr 17 18:19:42 UTC 2013 i686 athlon i686 GNU/Linux

जवाबों:


34

ऐसा लग रहा है कि अपराधी है /etc/update-motd.d/91-release-upgrade

यह कॉल करता है /usr/lib/ubuntu-release-upgrader/release-upgrade-motd

यह फ़ाइल फ़ाइल की जाँच करती है /var/lib/ubuntu-release-upgrader/release-upgrade-available

अगर वह मौजूद है, तो वह भीतर चला जाता है motd। यदि ऐसा नहीं होता है, तो यह कॉल करता है /usr/lib/ubuntu-release-upgrader/check-new-release

वह अंतिम आदेश सही परिणाम देता है, लेकिन किसी कारण से फ़ाइल को हटाया नहीं गया था। मैंने फाइल निकाली और कमांड्स को फिर से चलाया। संदेश का दिन वापस नहीं रखा गया था।

इसलिए अंतिम मुद्दा था 'कैश' 'अपडेट की जरूरत' को मंजूरी नहीं दी गई थी।

मैंने इस फ़ाइल को हटा दिया और इसे बिना किसी को तोड़े तय किया गया :)

sudo rm /var/lib/ubuntu-release-upgrader/release-upgrade-available

यह एक 12.10 -> 13.04 अपग्रेड था। मेरे दूसरे बॉक्स पर (12.04 एलटीएस, एक ही मुद्दा होने पर) मुझे दूसरे स्थान पर देखना पड़ा:

sudo rm /var/lib/update-notifier/release-upgrade-available

इस पद्धति का उपयोग किया और यह काम किया। 2 दिनों से अधिक होने तक स्वीकार नहीं किया जा सकता है :)
नेने

इस पूरी जांच के लिए धन्यवाद। स्पष्ट करने के लिए: बासी संदेश sudo rm /var/lib/ubuntu-release-upgrader/release-upgrade-availableको sudo /usr/lib/ubuntu-release-upgrader/release-upgrade-motdठीक करने के बाद ।
natevw

2
आपको उस दूसरे को हटाने की आवश्यकता नहीं है (या यहां तक ​​कि) भी नहीं चाहिए! यह एक ऐसी स्क्रिप्ट है जो नए अपग्रेड के लिए उपलब्ध है (लेकिन केवल अगर यह पहले एक नहीं मिली और इसे सहेज लिया गया)। तो केवल एक को /var/lib/हटा दिया जाना चाहिए मुझे लगता है।
नेन

राइट, रिलीज़-अपग्रेड-उपलब्ध "फ्लैग" को हटा दें और फिर रिलीज़-अपग्रेड-मोटिव स्क्रिप्ट को फिर से चलाएं।
natevw

1
सिर्फ FYI करें, इसके लिए बग रिपोर्ट दिखाई देते हैं - यहाँ एक है । ऐसा लगता है कि 13.10 के लिए एक तय है।
thegrinner

4

यदि आप फ़ाइल खोलते हैं /etc/update-motd.d/91-release-upgrade, तो अंदर आप देखेंगे कि बैश कॉल करता है /usr/lib/ubuntu-release-upgrader/release-upgrade-motd। जब आप इस फ़ाइल को खोलते हैं तो हमें यह कोड मिलता है:

stamp=/var/lib/ubuntu-release-upgrader/release-upgrade-available
if [ -s "$stamp" ]; then
        # Stamp exists and is populated, so display
        cat "$stamp"
        echo
elif [ -f "$stamp" ]; then
        # Stamp exists, but is empty, see if it's expired
        now=$(date +%s)
        lastrun=$(stat -c %Y "$stamp") 2>/dev/null || lastrun=0
        expiration=$(expr $lastrun + 86400)
        if [ $now -ge $expiration ]; then
                # But is older than 1 day old, so update in the background
                /usr/lib/ubuntu-release-upgrader/check-new-release -q > "$stamp$
        fi
else
        # No cache at all, so update in the background
        /usr/lib/ubuntu-release-upgrader/check-new-release -q > "$stamp" &
fi

स्टैम्प वैरिएबल /var/lib/ubuntu-release-upgrader/release-upgrade-availableफ़ाइल द्वारा पॉपुलेड है यदि मौजूद है या यदि यह खाली है तो यह जांचें कि क्या नया रिलीज़ मौजूद है। /var/lib/ubuntu-release-upgrader/release-upgrade-availableयदि आप टेक्स्ट एडिटर ( nano, vi...) के साथ खुलते हैं , तो आपको सिर्फ यह संदेश मिलेगा कि उबंटू की एक नई रिलीज है, इसलिए यदि आप खाली हैं या आपको हटाने के लिए बल देते हैं कि कोई नया रिलीज है या नहीं।

मुझे आशा है कि मैंने अपने बुरे अंग्रेजी के बारे में समझाया और क्षमा किया।


1

कोशिश sudo apt-get dist-upgrade
तो आप इस फ़ाइल में उस संदेश हो सकता है /etc/motd
आप तारीख तक कर रहे हैं, तो आप चला सकते हैं sodo rm /etc/motd<- संपादित करता है, तो आप कस्टम स्वागत पाठ है


ठीक है, यह motdवास्तव में है (जैसा कि यह मोटर्ड है), लेकिन क्या यह धोखा नहीं होगा? प्रणाली का मानना ​​है कि यह किसी कारण के लिए एक अद्यतन है, मुझे पता लगाना चाहते हैं क्यों
Nanne

अगर 1 कमांड चलने के बाद भी अपडेट नहीं पाता है sudo apt-get updateऔर lsb_release -scआपको देता है कि raringआप अपडेट हैं और संदेश गलत है, इसलिए हटा दिया जाना चाहिए
GM-Script-Writer-62850

मैं सहमत हूँ। मैं सिर्फ मोटिव को हटाने के आपके तरीके से सहमत नहीं हूं;)
नन्ने

+1 करने के लिए मुझे प्रेरित करने के लिए इशारा करते हुए, हालांकि पूरा जवाब नहीं दिया, क्योंकि यह वापस आ जाता अगर मैं अभी हटा देता।
नन्ने

0

मैंने निम्नलिखित कार्य किया:

  1. cd /var/lib/ubuntu-release-upgrader/
  2. mv release-upgrade-available release-upgrade-available.old
  3. cd /usr/lib/ubuntu-release-upgrader/
  4. ./check-new-release
  5. लॉग आउट / इन करें

MOTD वापस सामान्य हो गया था।

संभवतः ऊपर जैसा ही है, लेकिन मुझे पूरी तरह से परिणाम जानने के बिना चीजों को हटाना पसंद नहीं है। मैं अभी उस फ़ाइल को वहीं छोड़ दूंगा, और अक्टूबर में अपग्रेड के लिए 13.10 की प्रतीक्षा करूंगा। एक बार जब मुझे पता है कि यह काम कर रहा है, तो मैं .old फ़ाइल को हटा दूंगा (या नहीं, यह वास्तव में कुछ भी चोट नहीं पहुंचा रहा है)।


फ़ाइल एक ध्वज है, ऐसा करने की कोई आवश्यकता नहीं है।
नन्ने

0

अब एक रिलीज़ जारी किया गया है, बस चलाएं sudo aptitude update && sudo aptitude full-upgradeऔर संदेश हटा दिया जाएगा।


क्या यह आपके पूरे सिस्टम को अपडेट नहीं करता है? यह थोड़ा मूर्खतापूर्ण लगता है :) वैसे भी, यह सवाल इस बारे में था कि अगर संदेश नहीं जाता है तो क्या करें। यह जानने के लिए अच्छा है कि शायद यह फिर से कठिन नहीं होगा, लेकिन यह एक टिप्पणी के रूप में बेहतर हो सकता है?
नन्ने
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.