मुझे एक खतरनाक तारीख सर्वर से विरासत में मिली है। मैं इसे सुरक्षित रूप से अपग्रेड करने की योजना कैसे बनाऊं?


11

Apticron रात को बॉक्स पर चलता है और मुझे बता रहा है कि मेरे पास लगभग 150 अपडेट हैं जिन्हें बनाने की आवश्यकता है। सर्वर बिना किसी सच्चे बैकअप के साथ कुछ महत्वपूर्ण सेवाएँ चला रहा है, इसलिए मुझे अभी अपडेट शुरू करने में डर लग रहा है। मुझे यह कैसे योजना बनाना चाहिए?

संपादित करें: lsb_release:
वितरक ID: Ubuntu
विवरण: Ubuntu 8.04.3 LTS
रिलीज़: 8.04
कोडनेम: हार्डी

The following packages are currently pending an upgrade:

apache2 2.2.8-1ubuntu0.25
apache2.2-common 2.2.8-1ubuntu0.25
apache2-mpm-prefork 2.2.8-1ubuntu0.25
apache2-utils 2.2.8-1ubuntu0.25
apparmor 2.1+1075-0ubuntu9.3
apparmor-utils 2.1+1075-0ubuntu9.3
apt 0.7.9ubuntu17.6
apt-utils 0.7.9ubuntu17.6
base-files 4.0.1ubuntu5.8.04.8
bind9-host 1:9.4.2.dfsg.P2-2ubuntu0.12
bsdutils 1:2.13.1-5ubuntu3.1
bzip2 1.0.4-2ubuntu4.2
clamav 0.97.8+dfsg-1ubuntu1.08.04.1
clamav-base 0.97.8+dfsg-1ubuntu1.08.04.1
clamav-freshclam 0.97.8+dfsg-1ubuntu1.08.04.1
curl 7.18.0-1ubuntu2.4
dhcp3-common 3.0.6.dfsg-1ubuntu9.3
dnsutils 1:9.4.2.dfsg.P2-2ubuntu0.12
dpkg 1.14.16.6ubuntu4.2
dpkg-dev 1.14.16.6ubuntu4.2
fuse-utils 2.7.2-1ubuntu2.3
gnupg 1.4.6-2ubuntu5.2
gpgv 1.4.6-2ubuntu5.2
grub 0.97-29ubuntu21.2
gzip 1.3.12-3.2ubuntu0.1
klibc-utils 1.5.7-4ubuntu5
krb5-user 1.6.dfsg.3~beta1-2ubuntu1.8
ldap-utils 2.4.9-0ubuntu0.8.04.5
libapache2-mod-fcgid 1:2.2-1ubuntu0.8.04.1
libapache2-mod-php5 5.2.4-2ubuntu5.27
libapache2-svn 1.5.1dfsg1-1ubuntu2~hardy3
libapr1 1.2.11-1ubuntu0.2
libaprutil1 1.2.12+dfsg-3ubuntu0.3
libbind9-30 1:9.4.2.dfsg.P2-2ubuntu0.12
libbz2-1.0 1.0.4-2ubuntu4.2
libc6 2.7-10ubuntu8.3
libc6-dev 2.7-10ubuntu8.3
libc6-i686 2.7-10ubuntu8.3
libclamav6 0.97.8+dfsg-1ubuntu1.08.04.1
libcupsys2 1.3.7-1ubuntu3.16
libcurl3 7.18.0-1ubuntu2.4
libcurl3-gnutls 7.18.0-1ubuntu2.4
libdbus-1-3 1.1.20-1ubuntu3.9
libdns35 1:9.4.2.dfsg.P2-2ubuntu0.12
libdns36 1:9.4.2.dfsg.P2-2ubuntu0.12
libexpat1 2.0.1-0ubuntu1.2
libexpat1-dev 2.0.1-0ubuntu1.2
libfreetype6 2.3.5-1ubuntu4.8.04.10
libfreetype6-dev 2.3.5-1ubuntu4.8.04.10
libfuse2 2.7.2-1ubuntu2.3
libgc1c2 1:6.8-1.1ubuntu0.1
libgd2-xpm 2.0.35.dfsg-3ubuntu2.1
libgd2-xpm-dev 2.0.35.dfsg-3ubuntu2.1
libgnutls13 2.0.4-1ubuntu2.9
libhtml-parser-perl 3.56-1ubuntu0.1
libisc35 1:9.4.2.dfsg.P2-2ubuntu0.12
libisccc30 1:9.4.2.dfsg.P2-2ubuntu0.12
libisccfg30 1:9.4.2.dfsg.P2-2ubuntu0.12
libkadm55 1.6.dfsg.3~beta1-2ubuntu1.8
libklibc 1.5.7-4ubuntu5
libkrb53 1.6.dfsg.3~beta1-2ubuntu1.8
libkrb5-dev 1.6.dfsg.3~beta1-2ubuntu1.8
liblcms1 1.16-7ubuntu1.3
libldap-2.4-2 2.4.9-0ubuntu0.8.04.5
liblwres30 1:9.4.2.dfsg.P2-2ubuntu0.12
libmysqlclient15off 5.0.96-0ubuntu3
libpam0g 0.99.7.1-5ubuntu6.5
libpam-modules 0.99.7.1-5ubuntu6.5
libpam-runtime 0.99.7.1-5ubuntu6.5
libpango1.0-0 1.20.5-0ubuntu1.2
libpango1.0-common 1.20.5-0ubuntu1.2
libperl5.8 5.8.8-12ubuntu0.8
libpng12-0 1.2.15~beta5-3ubuntu0.7
libpng12-dev 1.2.15~beta5-3ubuntu0.7
libpq5 8.3.23-0ubuntu8.04.1
libsnmp15 5.4.1~dfsg-4ubuntu4.4
libsnmp-base 5.4.1~dfsg-4ubuntu4.4
libssl0.9.8 0.9.8g-4ubuntu3.20
libssl-dev 0.9.8g-4ubuntu3.20
libsvn1 1.5.1dfsg1-1ubuntu2~hardy3
libsvn-perl 1.5.1dfsg1-1ubuntu2~hardy3
libtasn1-3 1.1-1ubuntu0.1
libthai0 0.1.9-1ubuntu0.2
libthai-data 0.1.9-1ubuntu0.2
libtiff4 3.8.2-7ubuntu3.16
libtomcat5.5-java 5.5.25-5ubuntu1.3
libwww-perl 5.808-1ubuntu0.1
libxml2 2.6.31.dfsg-2ubuntu1.12
libxml2-dev 2.6.31.dfsg-2ubuntu1.12
libxslt1.1 1.1.22-1ubuntu1.4
libxslt1-dev 1.1.22-1ubuntu1.4
linux-image-2.6.24-32-server 2.6.24-32.107
linux-image-server 2.6.24.32.34
linux-libc-dev 2.6.24-32.107
linux-server 2.6.24.32.34
linux-ubuntu-modules-2.6.24-32-server 2.6.24-32.52
logrotate 3.7.1-3ubuntu0.8.04.1
mount 2.13.1-5ubuntu3.1
mysql-client-5.0 5.0.96-0ubuntu3
mysql-common 5.0.96-0ubuntu3
mysql-server 5.0.96-0ubuntu3
mysql-server-5.0 5.0.96-0ubuntu3
nagios-plugins 1.4.11-1ubuntu5.1
nagios-plugins-basic 1.4.11-1ubuntu5.1
nagios-plugins-extra 1.4.11-1ubuntu5.1
nagios-plugins-standard 1.4.11-1ubuntu5.1
nfs-common 1:1.1.2-2ubuntu2.4
nscd 2.7-10ubuntu8.3
ntp 1:4.2.4p4+dfsg-3ubuntu2.3
ntpdate 1:4.2.4p4+dfsg-3ubuntu2.3
openssh-client 1:4.7p1-8ubuntu3
openssh-server 1:4.7p1-8ubuntu3
openssl 0.9.8g-4ubuntu3.20
perl 5.8.8-12ubuntu0.8
perl-base 5.8.8-12ubuntu0.8
perl-doc 5.8.8-12ubuntu0.8
perl-modules 5.8.8-12ubuntu0.8
php5 5.2.4-2ubuntu5.27
php5-cli 5.2.4-2ubuntu5.27
php5-common 5.2.4-2ubuntu5.27
php5-curl 5.2.4-2ubuntu5.27
php5-dev 5.2.4-2ubuntu5.27
php5-gd 5.2.4-2ubuntu5.27
php5-ldap 5.2.4-2ubuntu5.27
php5-mysql 5.2.4-2ubuntu5.27
php5-sybase 5.2.4-2ubuntu5.27
php5-tidy 5.2.4-2ubuntu5.27
phpmyadmin 4:2.11.3-1ubuntu1.3
postfix 2.5.1-2ubuntu1.4
python2.5 2.5.2-2ubuntu6.2
python2.5-dev 2.5.2-2ubuntu6.2
python2.5-minimal 2.5.2-2ubuntu6.2
python-apt 0.7.4ubuntu7.7
python-libxml2 2.6.31.dfsg-2ubuntu1.12
python-subversion 1.5.1dfsg1-1ubuntu2~hardy3
samba-doc 3.0.28a-1ubuntu4.18
snmp 5.4.1~dfsg-4ubuntu4.4
ssh 1:4.7p1-8ubuntu3
subversion 1.5.1dfsg1-1ubuntu2~hardy3
subversion-tools 1.5.1dfsg1-1ubuntu2~hardy3
sudo 1.6.9p10-1ubuntu3.10
sun-java5-bin 1.5.0-22-0ubuntu0.8.04
sun-java5-demo 1.5.0-22-0ubuntu0.8.04
sun-java5-jdk 1.5.0-22-0ubuntu0.8.04
sun-java5-jre 1.5.0-22-0ubuntu0.8.04
tomcat5.5 5.5.25-5ubuntu1.3
tomcat5.5-admin 5.5.25-5ubuntu1.3
tomcat5.5-webapps 5.5.25-5ubuntu1.3
tzdata 2012e~repack-0ubuntu0.8.04
update-manager-core 1:0.87.33
util-linux 2.13.1-5ubuntu3.1
util-linux-locales 2.13.1-5ubuntu3.1
w3m 0.5.1-5.1ubuntu1.1
wget 1.10.2-3ubuntu1.2
x11-xserver-utils 7.3+2ubuntu0.1

1
उबंटू का कौन सा संस्करण चल रहा है?
तरुण

विवरण: Ubuntu 8.04.3 LTS
jon_brockman

8
क्या आप वास्तव में एक उत्तर की उम्मीद करते हैं जहां आपको बैकअप बनाने के लिए नहीं कहा जाएगा? :-)
एंड्रिया कोरबेलिनी

मेरा मानना ​​है कि आपको यहां प्रबंधन स्तर पर उत्तर की आवश्यकता है। बैकअप और सेवाओं और डेटा के बारे में कोई जानकारी के बिना, वास्तव में "एलटीएस (8.04) से एलटीएस (10.04) से एलटीएस (12.04) में अपग्रेड करने में सक्षम होने के अलावा अन्य प्रदान करने के लिए एक विशिष्ट उत्तर नहीं है।" और हाँ, बस बैकअप भाग को ठीक करें। व्यक्तिगत रूप से, मैं एक नए इंस्टॉलेशन को प्राथमिकता दूंगा, नए इंस्टॉलेशन पर डेटा कॉपी किया।
gertvdijk

1
एंड्रिया: मैंने निश्चित रूप से उम्मीद की थी कि बैकअप बनाना हर प्रतिक्रिया का हिस्सा होगा। हालांकि, यह आसान हिस्सा है।
जोंब्रुकमैन

जवाबों:


16

उन पैकेजों के संस्करणों के आधार पर, यह Ubuntu हार्डी 8.04 LTS प्रतीत होता है। वह पांच साल से अधिक पुराना है। इसकी उम्र के बावजूद, आधिकारिक समर्थन केवल मई 2013 में समाप्त हो गया, लेकिन इसे कभी भी सुरक्षा अद्यतन नहीं मिल रहा है और यह एक समस्या है।

ऊपर सूचीबद्ध संस्करण 2010 में प्रकाशित किए गए थे और जो हाथ में कार्य की तात्कालिकता को उजागर करना चाहिए। यह सर्वर संभवतः कई दूरस्थ कारनामों के लिए असुरक्षित है।

आप 12.04 (जो 2017 तक समर्थित है) में इन-प्लेस वितरण उन्नयन का प्रयास कर सकते हैं, लेकिन इसका अर्थ है सेवा में रुकावट और तुरंत चीजों के टूटने का मतलब हो सकता है। यह 12.04 तक पहुंचने के लिए कुछ पुनरावृत्तियों को भी ले सकता है। यह सिर्फ एक गन्दा विचार है।

मैं नए सिरे से शुरू करूँगा। नया सर्वर, नया उबंटू इंस्टॉल।

  1. बैकअप सिर्फ उसी स्थिति में करें जब यह बस विस्फोट करता है लेकिन अन्यथा पुराने सर्वर को छोड़ दें। जो भी वर्तमान में इस सर्वर का उपयोग कर रहा है, वह किसी भी डाउनटाइम की सराहना नहीं करेगा, इसलिए पुराने को छोड़ना सहकर्मियों और खुश बॉस को खुश करने का मार्ग है।

  2. उबंटू 12.04 (या जो कुछ भी नवीनतम LTS पढ़ने के समय है) को एक नए सर्वर (या वर्चुअल मशीन पर स्थापित करें, हालाँकि आपके पास चीजें सेट हो गई हैं) स्थापित करें। यदि यह कंपनी के कई सर्वरों में से एक है, तो यह हार्डवेयर समेकन / अतिरेक तकनीक को देखने लायक हो सकता है जो वर्चुअलाइजेशन के साथ अच्छी तरह से काम करता है।

  3. पुराने सर्वर से काम करने के लिए आवश्यक चीजों की एक सूची बनाएं। वहां कौन सी वेबसाइट चल रही हैं? लोग इस पर क्या सेवाएं प्रदान करते हैं? IP क्या उपयोग करता है? क्या आईपी बदला जा सकता है? कैसे? कहाँ पे? कौन बाधित करेगा?

    इस चरण के अंत तक आपके पास एक दस्तावेज होना चाहिए जो आपको बताए कि आपको क्या करने की आवश्यकता है।

  4. # 3 से पैकेजों को स्थापित करें लेकिन पुराने विन्यास को कॉपी न करें।

    यह वास्तव में पुराने सर्वर से पोर्ट / आदि / ओवर को लुभाने वाला है, लेकिन मैंने इससे पहले PHP के साथ भी ऐसी ही चीजें की हैं और इसने मुझे पीछे छोड़ दिया है। # 3 से अपनी टिप्पणियों का उपयोग करें और आधुनिक सर्वोत्तम प्रथाओं के आधार पर नया कॉन्फ़िगरेशन बनाने के लिए पुराने सर्वर के साथ खेलने से।

  5. अपनी वेबसाइट और डेटाबेस को कॉपी करें।

  6. परीक्षण और ठीक करें। मुझे नहीं पता कि इसमें कितना समय लगेगा क्योंकि मैंने पहले कभी टॉमकैट वेबसाइट को अपग्रेड नहीं किया है, लेकिन बहुत कम से कम आपको यह सुनिश्चित करने की आवश्यकता है कि यह अभी भी वह सब कुछ करता है जो इसे माना जाता है।

  7. जब आप खुश होते हैं तो यह काम करता है, आपको पुराने सर्वर से डेटा को फिर से कॉपी करने की आवश्यकता होगी (यह मानते हुए कि लोग इस बीच इसका उपयोग कर रहे हैं)।

  8. पुराने सर्वर को अनप्लग करें और इसे समुद्र में फेंक दें। या इसका पुनरूत्पादन करें। यह शायद प्राचीन और अक्षम है, इसलिए यह एक बुरा विचार नहीं हो सकता है

जैसा कि ब्रेंडन ने टिप्पणियों में उल्लेख किया है, आपको चरण 3 और 6 के बीच एक टन प्रलेखन उत्पन्न करना चाहिए। यदि आप सिर्फ यह लिख रहे हैं कि आप क्या कर रहे हैं और क्यों आप चीजों को करते हैं, तो यह आपको 30 मिनट लंबा लगेगा लेकिन यह ' अगली बार के लिए आपको एक ठोस योजना के साथ छोड़ देंगे। जब आप काम पूरा कर लेते हैं, तो अगली बार जब आप निष्कर्ष निकाल सकते हैं, तो आप अनावश्यक कदम उठा सकते हैं।

मुझे पिछले मालिक और उनके मालिक को सर्वर की स्थिति के बारे में एक नोट छोड़ने के लिए भी लुभाया जाएगा और खतरनाक रूप से लापरवाह सुरक्षा अपडेट कितना खतरनाक है। आप ऐसा कर सकते हैं एक हस्तक्षेप उपकरण की तरह लग रहा है लेकिन यह वैकल्पिक है।


8
"इसे समुद्र में
फेंक दो

खैर, लगता है कि मैं बुलेट को काट कर एक नया सर्वर बनाऊंगा। इनपुट के लिए धन्यवाद।
जों_ब्रोकमैन

2
मैं भी वर्चुअलाइजेशन में देखूंगा - सर्वर को वर्चुअलाइज करें, फिर स्नैपशॉट और आपके पास अब एक बैकअप और एक खेल का मैदान होगा। सामान, सफलता की कोशिश करो? स्नैपशॉट, और रोलबैक और फिर से प्रयास करें। खरोंच से शुरू करने के लिए भी। कोशिश करें, स्नैपशॉट या फिर वापस लाएं।
वर्नरसीडी

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