आपने Amazon Linux 2 के बारे में सुना होगा। यह एक AWS ऑपरेटिंग सिस्टम है, जिसे Amazon द्वारा विकसित किया गया है। यह मुफ्त में पेश किया जाता है, और आपको टेस्टिंग के लिए वर्चुअल मशीन उपकरण भी मिलते हैं। जो मैंने किया, जैसा कि मैंने इस विषय पर अपने लेख में दिखाया था।
परीक्षण के दौरान मुझे जो एक अड़चन आई वह थी लॉगिन। आम तौर पर, आप अपने EC2 इंस्टेंस में लॉग इन करने के लिए SSH का उपयोग करते हैं। लेकिन आप एक अनिवार्य रूप से ऑफलाइन वर्चुअल मशीन के लिए क्या उपयोग करते हैं? मुझे ऑनलाइन कोई रूट/ec2-user कॉम्बो नहीं मिला, और सिंगल मोड में पासवर्ड बदलने की सामान्य विधि ने काम नहीं किया। इसलिए यह गाइड। यह आपको दिखाएगा कि अपने Amazon Linux 2 वर्चुअल मशीन के लिए लॉगिन क्रेडेंशियल्स को मैन्युअल रूप से कैसे बदलें, ताकि आप परीक्षण शुरू कर सकें। मेरा अनुसरण करें।
लॉगिन प्रॉम्प्ट
खैर, इमेज डाउनलोड करें। बूट। लॉगिन। अब क्या?
सिंगल मोड
लंबे समय के लिनक्स उपयोगकर्ता ट्रिक याद रखेंगे। अपने सिस्टम को सिंगल मोड में बाध्य करें, रूट को लिखने योग्य के रूप में रीमाउंट करें, पासवर्ड बदलें, रीबूट। हमने यह अनगिनत बार किया है। अफसोस, अब संभव नहींşiktaş।
मैंने बूट मेनू में बूट विकल्पों में init=/bin/bash जोड़ने की कोशिश की, और सिस्टम में कर्नेल पैनिक हुआ। मुझे यकीन नहीं है कि यह कर्नेल में कुछ है, तथ्य यह है कि Amazon Linux गौरवशाली systemd का उपयोग करता है, या कुछ और, लेकिन पुरानी और सिद्ध विधि ने मदद नहीं की।
ऑनलाइन पढ़कर, दस लाख bin-bash प्रविष्टियों के अलावा जो कुछ भी नया नहीं देती थीं, मुझे RHEL संस्करण 7 के लिए पासवर्ड बदलने के तरीके पर एक विस्तृत लेख मिला। ट्यूटोरियल में RHEL 6 से RHEL 7 में परिवर्तन की अधिक दार्शनिक अवधारणा का भी उल्लेख है, और तथ्य यह है कि यह RHCSA परीक्षा का हिस्सा है। मेरा मतलब क्या? सादगी कहां चली गई?
वैसे भी, मैं आपको एक रैंट का वादा करता हूं, लेकिन जैसा कि लेख में कहा गया है, कर्नेल लाइन में rd.break जोड़ने से मदद मिल सकती है, और चूंकि Amazon Linux 2 RHEL पर आधारित है, मैंने सोचा चलो करते हैं। केवल इसने कुछ नहीं किया। Amazon Linux बेफिक्री से सामान्य रूप से बूट हुआ। इसने वांछित परिणाम भी नहीं दिए।
Amazon के पास इसे कैसे करना है, इस बारे में एक बहुत छोटा और अस्पष्ट मार्ग है। वे कहते हैं कि आपको एक क्लाउड-इनिट कॉन्फ़िगरेशन ISO बनाना चाहिए, और फिर वे आपको वर्चुअलाइजेशन प्लेटफॉर्म दस्तावेज़ीकरण का उल्लेख करते हैं। बहुत मददगार नहीं, मुझे डर है।
VDI को मैन्युअल रूप से माउंट करें
हमने इसके बारे में अतीत में बात की है। मैंने आपको दिखाया था कि वर्चुअल मशीन डिस्क और पार्टीशन को लूपबैक डिवाइस के रूप में कैसे माउंट किया जाए, ताकि आप फाइल सिस्टम सामग्री को संपादित कर सकें। हमने KVM मशीनों को क्लोन करने के लिए partx का उपयोग किया। हम यहां वही काम करेंगे, और मैं आपको वर्चुअल मशीन इमेज फाइल सिस्टम को माउंट और प्रस्तुत करने का एक और तरीका दिखाने जा रहा हूं।
हमें qemu-nbd टूल की आवश्यकता है, जो एक समान ट्रिक करता है। यह उपयोगिता अधिकांश वितरणों में qemu-kvm पैकेज के हिस्से के रूप में उपलब्ध है, इसलिए आप इसे इंस्टॉल करते हैं। फिर, टूल का उपयोग करें। यदि निष्पादन विफल होता है, तो आपको nbd (नेटवर्क ब्लॉक डिवाइस) मॉड्यूल को मैन्युअल रूप से मेमोरी में लोड करने की आवश्यकता हो सकती है। तो, कमांड का क्रम (sudo या root के रूप में):
install qemu-kvm modprobe nbd qemu-nbd -c /dev/nbd0
Amazon Linux 2 vdi इमेज डाउनलोड करें और इसे ऊपर की कमांड में मैप करें। आपको विशेष रूप से /dev/nbd0 का उपयोग करने की आवश्यकता नहीं है, आप किसी भी नंबर का उपयोग कर सकते हैं, लेकिन क्रमिक रूप से काम करना आसान और क्लीनर है।
एक बार ब्लॉक डिवाइस मैप हो जाने पर, आपको इसके पार्टीशन /dev/nbd0p* के तहत मिलेंगे। नंबर वास्तविक हार्ड डिस्क पार्टीशन लेआउट से मेल खाएंगे, मान लें p1, p2, आदि। फिर से, यह लगभग वही है जो हमने partx के साथ किया था। अगला कदम वांछित पार्टीशन को कहीं माउंट करना है:
mount /dev/nbd0pX /mountpoint
एक बार जब आप यह कमांड कर लेते हैं, तो अब आपके पास Amazon Linux 2 vdi फाइल सिस्टम (पार्टीशन) की सामग्री आपके वांछित माउंटपॉइंट (जैसे /mnt) के तहत उजागर होती है, और अब हम इसमें हेरफेर कर सकते हैं।
/etc/shadow फाइल संपादित करें
अब हम पासवर्ड बदलना चाहते हैं। हम इसे इस प्रकार करने जा रहे हैं। हमारे नेटिव लिनक्स पर, जो वास्तव में वर्चुअल मशीन चला रहा है, एक नया उपयोगकर्ता बनाएं। आप इसे जो चाहें कह सकते हैं। मान लें amazon। एक पासवर्ड बनाएं। /etc/shadow फाइल खोलें। आप देखेंगे कि पासवर्ड एन्क्रिप्टेड है और दो कोलन डिलीमीटर के बीच एक लंबे हैश के रूप में प्रस्तुत किया गया है। बढ़िया। यह वही है जो हमें चाहिए। कुछ इस तरह:
amazon:$123456$dedoimedo:11111:0:99999:6:::
अब पहले से Amazon Linux 2 फाइल सिस्टम माउंटपॉइंट पर नेविगेट करें, मान लें /mnt और इसकी shadow फाइल को टेक्स्ट एडिटर में खोलें:
/mnt/etc/shadow
आप देखेंगे कि डिफ़ॉल्ट उपयोगकर्ता वास्तव में ec2-user कहलाता है। भले ही आप यह नहीं जानते थे, अब आप जानते हैं। पासवर्ड के लिए वहां कुछ हैश भी है। मुझे नहीं पता कि यह क्या है, और यह मायने नहीं रखता। लोकल amazon उपयोगकर्ता से हैश से बदलें। फाइल सेव करें, vdi अनमाउंट करें।
रीबूट, लॉगिन, काम करें, और आनंद लें
अपनी वर्चुअल मशीन को फिर से शुरू करें। एक बार जब आप लॉगिन प्रॉम्प्ट पर पहुंच जाते हैं, तो सही उपयोगकर्ता नाम और पासवर्ड के साथ सही ढंग से पहचान करें जिसे हमने अभी वहां प्लांट किया है। आप अब लॉग इन कर चुके होंगे, और आप अपने वर्चुअल मशीन उपकरण के साथ काम करना शुरू कर सकते हैं। अब, हमने इसे Amazon Linux के साथ किया, लेकिन यह ट्रिक वहां के सभी लिनक्स वितरण और फाइल सिस्टम पर लागू होती है। यदि आप सामान्य रूप से सिस्टम रखरखाव नहीं चला सकते, तो आप इस ट्रिक का उपयोग सीमा को बायपास करने और फाइल सिस्टम में आवश्यक परिवर्तन करने के लिए कर सकते हैं। यह वर्चुअल मशीनों के लिए काफी उपयोगी है। हमने इसे KVM के साथ और अब VirtualBox के साथ भी किया।
निष्कर्ष
यदि आप Amazon Linux 2 का परीक्षण करने के इच्छुक हैं लेकिन आप लॉगिन क्रेडेंशियल अड़चन से टकरा रहे हैं, और आप अपना खुद का ISO इमेज बनाने या EC2 सामान का उपयोग करने का पूरा, उचित तरीका निकालने का मन नहीं करते हैं, तो आप वर्चुअल हार्ड डिस्क को माउंट करने के लिए partx या qemu-nbd का उपयोग कर सकते हैं, और मैन्युअल रूप से shadow फाइल संपादित कर सकते हैं। यह एक गारंटीकृत समाधान है, यदि सिंगल मोड या रेस्क्यू मोड या जो भी हो में बूट करना आपके लिए काम नहीं करता है।
Amazon Linux 2 कुछ दिलचस्प विशेषताओं के साथ एक मजेदार ऑपरेटिंग सिस्टम की तरह दिखता है, और तकनीकी/नौकरशाही गड़बड़ जैसे प्रारंभिक लॉगिन/पासवर्ड के कारण उन्हें याद करना शर्म की बात होगी। मेरा मतलब है कि कोई कारण नहीं है कि किसी भी डिस्ट्रो की तरह एक डिफ़ॉल्ट सेट क्यों नहीं होना चाहिए। साथ ही लिनक्स बुनियादी ढांचे में सामान्य परिवर्तन, init=/bin/bash के संबंध में निश्चित रूप से मदद नहीं करते। उम्मीद है, यह लेख आपको आवश्यक तकनीकी जानकारी और साहसिक प्रेरणा प्रदान करता है ताकि आप अपनी यात्रा शुरू कर सकें। सबसे अच्छी बात, यह डिस्ट्रो-अज्ञेयवादी है। कोई भी वर्चुअल मशीन उपकरण, कोई भी फाइल सिस्टम, आप अपने परीक्षण के लिए आवश्यक परिवर्तन करने में सक्षम होंगे। खोज का आनंद लें।
Cheers.