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