जब कर्म सबसे खराब हो जाता है, तो आपका वर्चुअलाइजेशन अनुभव खट्टा हो सकता है। यदि आप Xen तकनीक के नए नए उपयोगकर्ता हैं, तो आप कठिन तरीके से सीख सकते हैं कि Xen त्रुटि संदेश अत्यंत वर्बोज़ हैं और बहुत उपयोगी नहीं हैं, जब तक कि आप Python डेवलपर न हों। वर्बोज़ ट्रेस और आंतरिक फ़ंक्शन कॉल के गूढ़ संदर्भों के साथ, त्रुटियां वास्तव में आपको उन समस्याओं से अलग कर सकती हैं जो स्वाभाविक रूप से सरल और आसानी से हल होने वाली समस्याएं हैं। पी>
जबकि मैं वर्चुअलाइजेशन या पायथन में कोई विशेषज्ञ नहीं हूं, मुझे कुछ सामान्य समस्याएं मिली हैं जिन्हें हल करने में केवल कुछ ही मिनट लगते हैं, लेकिन कम जानकार उपयोगकर्ताओं के लिए यह अनंत काल की तरह लग सकता है। पी.एस. मैं एक विशेषज्ञ हूं, लेकिन आम तौर पर यह दावा करना बेहतर होता है कि आप नहीं हैं, क्योंकि 1) त्रुटियों को क्षमा किया जाता है, 2) आप असफल होने का जोखिम उठा सकते हैं 3) लोगों को विनम्रता और वह सब अंडरडॉग रवैया पसंद है। जो भी हो, मुझे Xen का आनंद लेने में आपकी मदद करने दीजिए। पी>
युक्ति 1:प्रदर्शित करें
शुरू करने से पहले, सुनिश्चित करें कि आपका प्रदर्शन ठीक से कॉन्फ़िगर किया गया है। चाहे आप BASH या TCSH का उपयोग करें, DISPLAY चर को उपयुक्त डिवाइस पर निर्यात या सेट करें। यह पहला कदम होना चाहिए। पी>
निर्यात प्रदर्शन =होस्टनाम:पोर्ट
टिप 2:
नाम का कोई मॉड्यूल नहीं आपको इस तरह के एक लाख संदेश मिल सकते हैं:कोई मॉड्यूल नाम xen.xm नहीं, कोई मॉड्यूल नाम gtk नहीं, कोई मॉड्यूल नाम नहीं। ज्यादातर मामलों में, समस्या का स्रोत समान होता है, भले ही त्रुटि संदेश असंबंधित दिखाई दे। पी>
आइए एक एक्सएम ट्रेसबैक का एक उदाहरण देखें; /usr/sbin/xm कुछ चलाने का प्रयास करें और विफल:
लिनक्स #xm सूची
ट्रेसबैक (सबसे हालिया कॉल अंतिम):
फ़ाइल "/usr/sbin/xm", लाइन 8, <मॉड्यूल> में
xen.xm आयात मुख्य से
आयात त्रुटि:xen.xm
दो विकल्प हैं:1) मॉड्यूल वास्तव में गायब है 2) कहीं और कुछ गलत है। आइए पहले पहले विकल्प की खोज करके शुरुआत करें। पी>
लापता पायथन मॉड्यूल
मॉड्यूल वास्तव में गायब हो सकता है। आप यह जांच कर सत्यापित कर सकते हैं कि संबंधित पैकेज आपके होस्ट पर स्थापित है या नहीं। उदाहरण के लिए, यदि gtk पैकेज गुम है, तो आप gtk और python-gtk पैकेज के लिए संस्थापन डेटाबेस को क्वेरी कर सकते हैं। पी>
आप असफल कमांड को स्ट्रेस के साथ भी चला सकते हैं और गुम फाइलों या निर्देशिकाओं की तलाश कर सकते हैं जिनकी उपयोगिता अपेक्षा कर रही है। यह आपको हाथ में समस्या के बारे में अधिक जानकारी देनी चाहिए। यह बहुत संभव है कि आपके बॉक्स पर एक अधूरा Xen इंस्टॉलेशन हो सकता है। पी>
कुछ और गलत है
कुछ और पायथन सेटअप को संदर्भित करता है। आपके पास अपनी मशीन पर संकुल स्थापित हो सकते हैं, हालाँकि हो सकता है कि पायथन उन्हें किसी कारण से नहीं देख रहा हो। इस समस्या को हल करने के लिए, आप मैन्युअल रूप से PYTHONPATH चर सेट कर सकते हैं और इसे साइट-पैकेज निर्देशिका पर इंगित कर सकते हैं। पी>
PythonPATH=/path-to-python-version/site-packages
निर्यात करेंयह सुनिश्चित करने के लिए कि आप वास्तव में Python के सही संस्करण का उपयोग कर रहे हैं, आपको अपने PATH चर की भी जाँच करनी चाहिए। पूर्ण पथ के साथ कमांड चलाने की भी हमेशा सिफारिश की जाती है। यह मुझे टिप नंबर तीन पर लाता है। पी>
टिप 3:स्पष्ट आदेश
मानो या न मानो, अधिकांश ज़ेन यूटिलिटी रैपर स्क्रिप्ट हैं। नीचे आपको Python कोड मिलता है। उदाहरण के लिए, वर्चुअल मशीन मैनेजर (VMM) भी एक Python चीज़ है। सबसे पहले, आपको यह पता लगाना होगा कि उपयोगिता कहाँ छिपी है:
जो
फिर, आपको उस फ़ाइल की सामग्री देखने की आवश्यकता है:
बिल्ली
फिर, रैपर के माध्यम से जाने के बजाय, आप सीधे आदेश निष्पादित कर सकते हैं। इन रैपर कमांड में सभी सापेक्ष नाम होते हैं, जो एक अच्छी बात है, क्योंकि आपके उपकरण इस बात की परवाह किए बिना काम करेंगे कि आप किस पायथन संस्करण का उपयोग कर रहे हैं, हालाँकि जब आपको समस्या होती है तो वे मूल कारण को छिपा देते हैं। पी>
पी>
यह देखने के लिए कि क्या आपको कोई वास्तविक समस्या है या आपके पर्यावरण सेटअप के साथ, अपने पायथन इंस्टॉलेशन के लिए पूर्ण पथ के साथ कमांड चलाएँ। उदाहरण के लिए, गुण-प्रबंधक को क्रियान्वित करने के बजाय आपको दौड़ना चाहिए:
/usr/bin/python "/usr/share/virt-manager ..."
या यहां तक कि अजगर के एक विशिष्ट संस्करण का उपयोग करें, जैसे कि python2.4 या अजगर 2.7। पी>
युक्ति 4:स्क्रिप्ट बदलें
जब तक आप एक कुशल उपयोगकर्ता नहीं हैं, तब तक इसकी अनुशंसा नहीं की जाती है, लेकिन आप विशिष्ट पथों और पायथन इंस्टॉलेशन को इंगित करने के लिए रैपर स्क्रिप्ट को बदल सकते हैं। आइए अपनी प्रारंभिक समस्या पर वापस जाएं। चल रहा है xm create
अब, हमें यह देखने की आवश्यकता है कि वास्तव में xm कमांड क्या है। जो xm के विरुद्ध चलाने से हमें पता चलता है कि यह /usr/sbin/xm के अंतर्गत छिपा है। अब इस फाइल को टेक्स्ट एडिटर में खोलें। यह वास्तव में एक पायथन लिपि है। पी>
#!/usr/bin/env python
Xen के कुछ संस्करणों में, पहली पंक्ति #!/Usr/bin/env python है। आप इसे एक विशिष्ट पायथन संस्करण में बदलना चाहते हैं और देखें कि क्या देता है। उदाहरण के लिए, पायथन 2.4 या शायद पायथन 2.6। इनमें से एक गलत कॉन्फ़िगर किया गया हो सकता है या पर्यावरण सेटअप से गायब हो सकता है। पी>
#!/usr/bin/env python <--- हटाएं
और फिर, आप देख सकते हैं कि सब कुछ वैसा ही काम करता है, जैसा आप उम्मीद करते हैं। उदाहरण के लिए, मेरी ओपनएसयूएसई 11.4 मशीन पर, जिसमें एक एक्सईएन कर्नेल भी स्थापित है:
पी>
इसी तरह, Xen के नए संस्करणों पर, जो सिर्फ /usr/bin/python को सूचीबद्ध करता है, आप यह देखने के लिए समान परिवर्तन करना चाह सकते हैं कि क्या आपको विशेष रूप से आपके सेटअप से संबंधित कोई समस्या है। पी>
पी>
कोई भी बदलाव करने से पहले मूल फाइलों का बैकअप लेना न भूलें। इसके अलावा, कभी भी एक समय में एक से अधिक परिवर्तन करने का प्रयास न करें, केवल यह सुनिश्चित करने के लिए कि आप नई, जटिल समस्याएँ पैदा न करें। पी>
मूर्खतापूर्ण लगता है, लेकिन अगर libvirt सेवा शुरू नहीं की जाती है तो आप अपने वर्चुअलाइजेशन सामग्री के साथ सांसों की बदबू का शिकार होंगे। आप अपने dom0 डोमेन से कनेक्ट नहीं हो पाएंगे और क्या नहीं। इसलिए, आपको यह सुनिश्चित करना चाहिए कि यह चल रहा है, साथ ही स्टार्टअप पर भी सक्षम है। पी>
और मुझे लगता है कि अभी के लिए इतना काफी है। पी>
वर्चुएटोपिया पर एक बहुत ही योग्य संसाधन। पी>
आपको RedHat दस्तावेज़ीकरण, सामान्य Xen समस्याओं में भी रुचि हो सकती है। पी>
यह लेख सबसे सुंदर नहीं हो सकता है, दूसरी ओर, पायथन ट्रेसबैक संदेश वास्तव में सुंदरता का काम भी नहीं है। बहुत अधिक वाचालता वास्तविक समस्याओं का सामना कर सकती है, जो कि सही पर्यावरण चर सेट करने या पायथन संस्करण को बदलने के रूप में सरल हो सकती है। उम्मीद है, यह मार्गदर्शिका आपको कई घंटों की अनावश्यक परेशानी और हताशा से बचाएगी। पी>
आपके पास पढ़ने के लिए बहुत कुछ है, इसलिए बेहतर होगा कि आप इसे करें। बस मेरे वर्चुअलाइजेशन सेक्शन में जाएं और पागलों की तरह क्लिक करना शुरू करें। वहाँ परिचय लेख है, वहाँ Xen क्लाउड प्लेटफ़ॉर्म और XenServer है, वहाँ अन्वेषण के लिए लाइव सीडी है। हम और अधिक ज़ेन उपहारों पर वापस आएंगे। यदि आप एक अन्य ओपन-सोर्स समाधान की कल्पना करते हैं, तो केवीएम भी है। आनंद लेना! पी>
यदि आपके पास अन्य सरल, वैश्विक, सार्वभौमिक, या सामान्य तरकीबें हैं जिन्हें आप साझा करना चाहते हैं, तो अजनबी न बनें, एक ईमेल भेजें। डेडोइमेडो आउट। पी>
प्रोत्साहित करना। पी>
# -*- मोड:अजगर; -*-
आयात प्रणाली
# यदि आवश्यक हो तो गैर-देशी अजगर पथ स्थापित करने के लिए फ़ॉलबैक पथ जोड़ें
sys.path.append('/usr/lib/python')
sys.path.append('/usr/lib64/python')
xen.xm आयात मुख्य से
main.main(sys.argv)
#!/usr/bin/python2.6 <--- उपयोग करें टिप 5:सेवाओं की जांच करें
और पढ़ना
निष्कर्ष