अगर मैं एक बूट करने योग्य USB ड्राइव को किसी अन्य USB पर कॉपी करता हूं, तो क्या यह एक डुप्लिकेट बूट करने योग्य ड्राइव बना देगा?


37

मुझे लगा कि यह एक गूंगा प्रश्न है लेकिन Google के साथ एक खोज यह संकेत देती है कि बूट करने योग्य ड्राइव पर डेटा को किसी अन्य USB पर कॉपी / पेस्ट करना भी संभव नहीं है? लेकिन अगर हम इसे कॉपी करने में सक्षम थे, तो भी यह काम क्यों नहीं करना चाहिए? (जो एक डुप्लिकेट बूट करने योग्य ड्राइव बना रहा है)


2
"कॉपी / पेस्ट" से आपका क्या मतलब है? जाहिर है, आपको उन हिस्सों को कॉपी करना होगा जो वास्तव में इसे बूट करने योग्य ड्राइव बनाते हैं (जैसे कि बूटलोडर, आदि), लेकिन कोई कारण नहीं है कि यह काम नहीं करना चाहिए।
जोर्ग डब्ल्यू मित्तग

जवाबों:


56

बस फाइलों को कॉपी करने से बूट करने योग्य ड्राइव नहीं बनेगी। यह न केवल एक USB फ्लैश ड्राइव की फाइलें है जो इसे बूट करने योग्य बनाती है, बल्कि विभाजन तालिका कॉन्फ़िगरेशन, ड्राइव सामग्री के संगठन के बारे में मेटाडेटा , जो एक पीसी को बताता है कि क्या यह बूट करने योग्य है , और क्या यह एमबीआर या जीपीटी है

जैसा कि cyberciti.biz में नोट किया गया है :

प्रत्येक डिस्क और विभाजन में किसी प्रकार के हस्ताक्षर और मेटाडेटा / मैजिक स्ट्रिंग्स होते हैं। ऑपरेटिंग सिस्टम द्वारा उपयोग किए जाने वाले मेटाडेटा डिस्क को कॉन्फ़िगर या संलग्न करने और आपके सिस्टम पर माउंट डिस्क का उपयोग करने के लिए।

हालाँकि, आप फ्लैश ड्राइव को कई टूल्स जैसे dd , EaseUS Todo Backup और उत्कृष्ट और ओपन सोर्स Clonezilla और Rufus के साथ क्लोन कर सकते हैं । ( Dd और Rufus के बारे में रिमाइंडर के लिए एलेक्स का धन्यवाद )।

यहां तक ​​कि इलेक्ट्रॉनिक उपकरण भी हैं जो स्वचालित रूप से फ्लैश ड्राइव को दोहराते हैं


15
वास्तव में आपको इसकी आवश्यकता भी नहीं है dd: सरल cpकार्य करेगा - बस फाइल सिस्टम सामग्री के बजाय डिवाइस नोड पर इसका उपयोग करना सुनिश्चित करें।
रुस्लान

उह, यह आश्चर्य की बात है। या शायद नहीं। लेकिन मेरे लिए कम से कम।
Jörg W Mittag

1
'कैट <सोर्स> डेस्टिनेशन' ठीक यही काम करेगा कि डेस्टिनेशन सोर्स से ज्यादा शॉटर न हो।
ysdx

@JoL आपने जोर्ग द्वारा की गई (अब हटाई गई) टिप्पणी नहीं देखी है। खान उनके दावे के लिए एक जवाब था cpजो डिवाइस नोड को कॉपी करेगा। भ्रम को रोकने के लिए, मैंने अब अपनी टिप्पणी भी हटा दी है।
रुस्लान

21

स्वरूपित विभाजन में केवल फाइलों के साथ नकल करना। आप बूट प्रक्रिया के लिए आवश्यक विशेष कार्य नहीं कर पाएंगे, जैसे बूट फ़्लैग सेट करना, बूट लोडर लिखना, या कभी-कभी विभाजन में सामान्य फ़ाइलों को भी सही स्थान पर पढ़ना (रीड: सेक्टर)। / अनुमतियाँ। जब तक आप उन चीजों को उपलब्ध होने के लिए भाग्यशाली होते हैं, जो पिछले बूट डिस्क निर्माण के कारण होते हैं, एक फॉर्मेटिंग टूल जो एमबीआर आदि को बूट लोडर लिखता है, आपको डिस्क को बूट करने योग्य बनाने के लिए और अधिक कदम उठाने की आवश्यकता होगी


विशेष रूप से जब BIOS मोड में बूट होता है , तो BIOS पहले सेक्टर (MBR) को देखने के लिए देखता है कि क्या एक वैध बूट हस्ताक्षर 0,0AA55 है । यदि हाँ तो यह उस क्षेत्र को लोड करता है और एमबीआर में बूट लोडर पर नियंत्रण स्थानांतरित करता है। MBR विभाजन कॉन्फ़िगरेशन का वर्णन करता है, इसलिए यह विभाजन के अंदर झूठ नहीं बोल सकता है और वह नहीं है जिसे आप सामान्य टूल के साथ कॉपी कर सकते हैं।

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

कई बूट लोडर जैसे कि LILO या पुराने विंडोज / DOS बूट लोडर भी MBR में हार्ड कोड की जानकारी देते हैं, जैसे कि अगले चरण की स्थिति या सिस्टम फ़ाइलों की। वे विभाजन डेटा को पढ़कर काम नहीं करते हैं, लेकिन इसके बजाय कुछ हार्ड कोडित क्षेत्र को पढ़ते हैं, क्योंकि यह फ़ाइल सिस्टम को पार्स करने के लिए बहुत अधिक कोड लेगा जो एमबीआर या पोस्ट-एमबीआर गैप जैसे छोटे स्थानों में निचोड़ा जाना बहुत कठिन है। यहां तक ​​कि ग्रब भी ऐसी हार्ड कोडिंग का समर्थन करता है । इसका मतलब है कि कुछ सिस्टम फाइलें सटीक स्थान , सेक्टर-दर-सेक्टर में होनी चाहिए , जिन्हें आप सामान्य कॉपी के साथ भी हासिल नहीं कर सकते। यही कारण है कि आप "नॉन-मूवेबल सिस्टम फाइल्स" देखते हैं विंडोज डिफ्रैगमेंटर या सिकुड़ते फाइल सिस्टम को चलाने के दौरान, जो कभी-कभी सही नहीं होता है, क्योंकि यह सिर्फ इतना है कि विंडोज उन फाइलों को स्थानांतरित करने से भी डरता है, भले ही आधुनिक बूट लोडर बहुत चालाक हो और ऐसी चीजों की परवाह न करें।

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


यूईएफआई में चीजें बहुत आसान हैं। यह FAT फ़ाइल सिस्टम (और गैर-मानक कार्यान्वयन पर और भी अधिक फ़ाइल सिस्टम) के बारे में जानता है, इसलिए बूट फ़ाइलें EFI सिस्टम विभाजन, AKA ESP में संग्रहीत की जाती हैं । UEFI ESP में * .efi अनुप्रयोगों को लोड करता है जो बाद में ऑपरेटिंग सिस्टम को लोड करेगा।

यूईएफआई फर्मवेयर यूएसबी फ्लैश ड्राइव जैसे हटाने योग्य भंडारण उपकरणों से बूटिंग का समर्थन करता है। उस प्रयोजन के लिए, एक हटाने योग्य डिवाइस को एक FAT12, FAT16 या FAT32 फ़ाइल सिस्टम के साथ प्रारूपित करने की आवश्यकता होती है, जबकि एक बूट लोडर को मानक ESP फ़ाइल पदानुक्रम के अनुसार संग्रहीत करने की आवश्यकता होती है, या सिस्टम को बूट लोडर का पूरा पथ प्रदान करके। बूट प्रबंधक।

तो मूल रूप से आपको केवल * .efi फ़ाइल (ओं) को ESP में कॉपी करना होगा और सिस्टम फ़ाइलों को सही फ़ोल्डर में रखना होगा। हालाँकि, अभी भी एक छोटी सी समस्या है क्योंकि * .efi फ़ाइल वाले FAT विभाजन को विभाजन के बाहर MBR या GPT तालिका में ESP के रूप में चिह्नित किया जाना चाहिए , जिसे ऊपर की तरह कॉपी करके नहीं किया जा सकता है। विशेष रूप से विभाजन प्रकार को बदलकर 0Ch / 0Bh / जो कुछ भी EFh में MBR और C12A7328-F81F-11D2-BA4B-00A0C93EC93B GPT में होना चाहिए, क्योंकि ESP वास्तव में FAT12 / 16/32 नहीं है, लेकिन एक स्वतंत्र फाइल सिस्टम है। FAT फाइल सिस्टम परिवार


और अभी भी कई अन्य विभाजन योजनाएं हैं जैसे बीएसडी डिस्क लेबल या एपीएम जिसे बूट करने के लिए अलग तरीके से संशोधित करने की आवश्यकता है। या हो सकता है कि यूएसबी स्टिक को बिना किसी विभाजन तालिका के स्वरूपित किया गया हो (AFAIK विंडोज डिफ़ॉल्ट रूप से ऐसा करता है), इसलिए इसे बूट करने योग्य बनाना अलग होगा। लेकिन एक ही सीमा लागू होती है: आपको गैर-विभाजन वाले क्षेत्रों को संशोधित करने की आवश्यकता है


1
यह सही जवाब है।
मार्गरेट ब्लूम

यह सबसे गहन उत्तर है, हां, लेकिन मुझे विश्वास नहीं है कि यह स्वीकृत उत्तर की तुलना में अधिक सही है, जो कि IMO सरल तरीके से सरलता से पूछे गए प्रश्न का उत्तर देता है।
इयान केम्प

@IanKemp स्वीकार किए गए उत्तर के साथ समस्या यह नहीं है कि यह सरल है (यह अच्छा है) लेकिन यह तकनीकी रूप से सबसे अच्छा अस्पष्ट है :)
मार्गेट ब्लूम

यदि आप एक यूएसबी स्टिक वॉल्यूम को सक्रिय के रूप में चिह्नित करते हैं - विंडोज़ सीएमडी लाइन "डिस्कपार्ट" उपयोगिता या किसी भी 3 पार्टी विभाजन प्रबंधक का उपयोग करके - एक विंडोज़ विस्टा / 7/8/10 आईएसओ छवि की सामग्री की नकल करके स्टिक विंडोज़ बूट स्टिक बन जाती है; कोई रैमड्राइव चीज या फ़ार्थुर माउंटिंग बूटिंग पर नहीं होती है। तो जाहिर है, छड़ी को सक्रिय के रूप में चिह्नित करने के बाद, आपको छड़ी पर एक छोटी बूट छवि फ़ाइल (बूटमेग और बूटमग्रे.फी) का अनुमान है; जटिल उपकरणों की कोई आवश्यकता नहीं है। मैं लिनक्स पर एक सरल कमांड लाइन प्रक्रिया की उम्मीद करूंगा, खिड़कियों की तुलना में आसान।
Red.Wave

3

परंपरागत रूप से, BIOS बूट को एक विशेष अदृश्य मार्कर की आवश्यकता होती है। यहाँ कुछ उदाहरण हैं :

  • यदि एमबीआर-विभाजन ("हार्ड डिस्क") है, तो विभाजन तालिका के भीतर
  • यदि फ्लॉपी / सुपरफ्लॉपी ("ज़िप ड्राइव"), मूल रूप से संपूर्ण ड्राइव को बिना विभाजन तालिका के स्वरूपित किया गया है, तो पहले कुछ बाइट्स के भीतर
  • यदि सीडी, तो एल टोरिटो

उन मामलों में, आप बस फ़ाइलों को कॉपी नहीं कर सकते। परिणामी ड्राइव अप्राप्य होगा क्योंकि यह उन विशेष मार्करों को याद नहीं कर रहा है।

हालांकि , यूईएफआई बूट विशेष, होशियार है, और विशेष रूप से इन मुद्दों को संबोधित करता है। हमेशा की तरह, मैं UEFI के लिए एक सरल प्राइमर के लिए इस ब्लॉग पोस्ट को पढ़ने की सलाह देता हूं । फ़ॉलबैक बूट सेक्शन का विशेष ध्यान रखें। यह भी यहाँ थोड़ा और विस्तार से चर्चा की है

काम करने के लिए आपको बस एक विशिष्ट पथ में एक फ़ाइल है जिसे फ़र्मवेयर खोजेगा। अनुकूलतम संगतता 1 के लिए , हां, यह एक FAT32- स्वरूपित विभाजन होना चाहिए जिसे GPT- विभाजन डिस्क में EFI सिस्टम विभाजन के रूप में चिह्नित किया गया है। हालांकि, अधिकांश फर्मवेयर एमबीआर-विभाजन और अनपार्टेड (सुपरफ्लॉपी) डिस्क पर भी (एकल) विभाजन की खोज करेंगे।

इसका मतलब यह है कि आपको वास्तव में UEFI बूट की आवश्यकता है एक FAT32 1- विकृत एकल विभाजन है जिसमें फ़ॉलबैक बूट प्रविष्टि है। एक x86_64 आर्किटेक्चर पर, इसका मतलब है कि आपको बस एक \EFI\BOOT\BOOTx64.EFIफ़ाइल की आवश्यकता है । आप बस एक फ्लैश ड्राइव से दूसरे में कॉपी कर सकते हैं, उस फाइल सहित, और सब कुछ काम करना चाहिए।


1 FAT32 और GPT मानक द्वारा आवश्यक हैं। एमबीआर और सुपरफ्लॉपी, एएफएआईके नहीं हैं, लेकिन डेस्कटॉप हार्डवेयर के बीच उनके लिए समर्थन बहुत सार्वभौमिक है। लैपटॉप थोड़ा अधिक गूढ़ है; टैबलेट एक टॉस-अप हैं, और मैक ईएफआई अद्वितीय है।

2 UEFI मानक को FAT32 समर्थन की आवश्यकता है। कुछ फर्मवेयर NTFS (हालांकि गारंटी से दूर) का समर्थन कर सकते हैं, और आप वास्तव में एक FAT32 ESP के भीतर NTFS ड्राइवर को एम्बेड कर सकते हैं।


0

यह निर्भर करता है कि आप 'कॉपी' से क्या मतलब है।

अपने ऑपरेटिंग सिस्टम के GUI में कॉपी और पेस्ट करें? नहीं, यह काम नहीं करेगा - कुछ फ़ाइलों को बूट करने योग्य USB जरूरतों को "छिपा हुआ" / अदृश्य माना जाएगा और कॉपी नहीं किया जाएगा।

कॉपी के प्रकार हैं जो काम करेंगे । इसकी सामग्री को 'कॉपी' से अलग करने के लिए इसे अक्सर 'इमेजिंग' एक नया यूएसबी कहा जाता है। ऐसा करने का सबसे आम तरीका एक कमांड-लाइन टूल है, लेकिन यदि आपको उनकी आवश्यकता है तो ग्राफिकल विकल्प उपलब्ध हैं।

ट्रैक पर अपनी खोज पाने के लिए पर्याप्त पृष्ठभूमि होनी चाहिए!

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