मैं रिबूट किए बिना अपने सर्वर के कर्नेल को कैसे अपग्रेड कर सकता हूं?


29

यह एक लोडेड प्रश्न है क्योंकि मैं पहले से ही इसके बारे में जानता हूं, और मुझे ksplice में बहुत दिलचस्पी है । समस्या यह है कि चूंकि उन्हें ओरेकल द्वारा खरीदा गया था, इसलिए उन्हें प्रसाद से कई सर्वर वितरण खींचने के लिए मजबूर किया गया है। उत्तर उतना सरल नहीं है जितना कि एक बार था।

मैंने यूनिक्स पर एक प्रश्न देखा। वह बताता है:

आप गतिशील रूप से अपने कर्नेल में लोड करने के लिए अपने खुद के ksplice पैच का निर्माण कर सकते हैं

महान! पर कैसे?!

मैंने kspliceअपने डेस्कटॉप पर रेपो में मुफ्त पैकेज स्थापित किया है ( ksplice-uptrackजो नॉन-फ्री नहीं है) और अब अपडेट उत्पन्न और लागू करना चाहते हैं। प्रक्रिया क्या है? क्या इस प्रक्रिया को स्वचालित करने के लिए कोई स्क्रिप्ट है?

इसके अलावा, अगर रिबूटलेस अपग्रेड के लिए आवश्यक सभी मशीनें कर्नेल (और kspliceपैकेज) में वहां बैठी हैं , तो पृथ्वी पर हम डिफ़ॉल्ट रूप से इसका लाभ क्यों नहीं उठा रहे हैं?


हाल ही में kGraft की घोषणा की गई थी । यह लगभग एक ही परिणाम प्रतीत होता है, इसलिए यदि आपके पास एक उत्तर है जिसमें इसे शामिल किया गया है, तो मैं इसके साथ खुश हूं। हालांकि वर्तमान में इसे रिलीज़ होने में कुछ महीने हैं।


नोट 1: मैं ksplice के बगल में एक समाधान के लिए खुश हूं लेकिन इसे एक ही चीज़ वितरित करना होगा: कर्नेल को अपडेट करना जो सर्वर को रिबूट किए बिना लागू किया जा सकता है।

नोट 2: मैं इसे फिर से कहूँगा; मुख्य ksplice "सेवा" उबंटू सर्वर का समर्थन नहीं करता है। यह उपयोग किया जाता है, लेकिन यह किसी भी अधिक नहीं है। जब मैं ksplice का उपयोग करने की इच्छा के बारे में बात करता हूं, तो मैं kspliceपैकेज में ओपन सोर्स टूल्स के बारे में बात कर रहा हूं । किसी भी उत्तर के बारे ksplice-uptrackमें बात करने वाला शायद वह नहीं है जो मैं इसके बाद कर रहा हूं क्योंकि यह वह हिस्सा है जो सीधे "सेवा" के साथ एकीकृत होता है।

जवाबों:


6

यहां अन्य सभी उत्तर महान हैं, लेकिन विशेष रूप से उबंटू के लिए, कैननिकल अब इस सेवा को 16.04 पर वितरित करता है।

यह 4.0 के जारी होने के बाद से अपस्ट्रीम लिनक्स कर्नेल में लाइव पैचिंग तकनीक का उपयोग करता है।


6

मैं ksplice के बारे में ज्यादा नहीं जानता, लेकिन सोचा था कि मैं इसका उल्लेख करूंगा - क्या आपने इसके बारे में सुना है kexec? यह वही हो सकता है जिसकी आपको आवश्यकता है।

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

आप आईबीएम डेवलपर के लेख पर नज़र डाल सकते हैं ताकि यह तय किया जा सके कि यह आपकी आवश्यकताओं के अनुरूप है या नहीं।


5
+1 के लिए kexec, लेकिन संक्षेप में यह एक गर्म रिबूट है - IE कर्नेल खरोंच से फिर से लोड हो जाता है, इसलिए इनिट स्क्रिप्ट आदि को अभी भी कहा जाता है। यह तकनीकी रूप से रिबूट नहीं है, लेकिन चलने वाली सेवाएं बंद हो जाएंगी।
जैकवीर्डी

हाँ, मैं इसके बारे में जानता हूँ लेकिन मैंने यह जानने के लिए ksplice पर कुछ नहीं पढ़ा है कि यह कैसे अलग है।
Marcin Kaminski

1
En.wikipedia.org/wiki/Ksplice के अनुसार , kspliceचल रहे कर्नेल पर एक द्विआधारी अंतर पैच लागू होता है , जबकि यह अभी भी स्मृति में है
jackweirdy

2
मुझे इसके बारे में थोड़ा और पढ़ने की आवश्यकता है क्योंकि यह दिलचस्प है। तो आप कितने समय में रीसेट होने से बचाने की कोशिश कर रहे हैं? : डी
मारिन कमिंसकी

3

ksplice रिबूट की आवश्यकता के बिना कर्नेल स्वैप की अनुमति देगा। Uptrack ksplice के भीतर काम करता है और इसमें /etc/uptrack/uptrack.conf में एक संपादन योग्य कॉन्फ़िग फ़ाइल होती है


2

Ksplice के लिए पूरी तरह से खुले स्रोत के विकल्प हैं जो दोनों को मेनलाइन लिनक्स कर्नेल में शामिल करने के लिए प्रस्तुत किया गया है। यह बताना जल्दबाजी होगी कि कर्नेल में कौन समाप्त होगा, लेकिन यदि आप पर्याप्त बहादुर हैं तो भी आप उन्हें आज़मा सकते हैं:

आप यहाँ उन दोनों के बारे में अधिक पढ़ सकते हैं: SUSE पोस्ट kGraft, Red Hat पोस्ट Kpatch पैच


1

आर्क लिनक्स विकी के निर्देश थे: https://wiki.archlinux.org/index.php/ksplice

एकमात्र हिस्सा जो डिस्ट्रो विशिष्ट प्रतीत होता है वह यह है कि कैसे ksplice को स्वयं स्थापित किया जाए। चूंकि आपने पहले ही पता लगा लिया है कि ऐसा लगता है, मुझे लगता है कि यह आपको अपने रास्ते पर लाना चाहिए।


1
जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
एरिक कारवाल्हो

0

16 जुलाई 2015 के बाद से "ओरेकल क्सप्लिस को फेडोरा और उबंटू डेस्कटॉप एडिशन पर मुफ्त में पेश किया गया है।"

बस डाउनलोड की गई .deb फ़ाइल को आप यहाँ प्राप्त कर सकते हैं

यदि आप कोशिश करते sudo dpkg -i ksplice-uptrack.debहैं तो आपको निर्भरता को ठीक करना होगा sudo apt-get install -f

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