सवाल लिनक्स से विंडोज 7 यूएसबी फ्लैश इंस्टॉल मीडिया कैसे बनाएं?


मेरे पास है:

  • आईएसओ छवि विंडोज 7 स्थापित मीडिया
  • 4 जीबी यूएसबी फ्लैश ड्राइव
  • कोई डीवीडी ड्राइव नहीं
  • लिनक्स स्थापित

102
2018-05-09 22:50


मूल


यदि आप सभी को प्रबंधित कर सकते हैं ये कार्य अपने लिनक्स डेस्कटॉप के भीतर से, आप घर को घुमाएंगे। मुझे लगता है कि सबसे कठिन हिस्सा उन सभी परिचालनों के साथ झुकाएगा जो विंडोज़ 'डिस्कपार्ट करता है। विभाजन को 'सक्रिय' और 'बूट', 'प्राथमिक', आदि के रूप में चिह्नित करना। - p.campbell
मुझे लगता है कि GParted (gparted.sourceforge.net) बस सभी विभाजन झंडे को ठीक कर सकते हैं। उदाहरण देखें gparted.sourceforge.net/screenshots.php । और मैंने परीक्षण नहीं किया है, लेकिन ऐसा लगता है कि rsync उस चेकलिस्ट में रोबोकॉपी के लिए प्रतिस्थापित कर सकता है। - Matthew Flaschen
उसी प्रश्न के कई विस्तृत उत्तर हैं askubuntu.com/q/289559/135671 - erik


जवाब:


ठीक है, यहां उल्लिखित सभी विधियों की असफल कोशिश करने के बाद, मुझे अंत में यह काम मिल गया। असल में, गायब कदम यूएसबी स्टिक को उचित बूट सेक्टर लिखना था, जिसे लिनक्स से किया जा सकता है ms-sys या lilo -M। यह विंडोज 7 खुदरा संस्करण के साथ काम करता है।

यहां पूरी तरह से रैंड डाउन है:

एमएस-सीएस स्थापित करें - अगर यह आपके भंडारों में नहीं है, तो इसे प्राप्त करें यहाँ। या वैकल्पिक रूप से, सुनिश्चित करें कि लिलो स्थापित है (लेकिन ऐसा न करें यदि आपके स्थानीय बॉक्स पर liloconfig चरण चलाएं तो उदा। ग्रब वहाँ स्थापित है!)

जांचें कि आपका यूएसबी मीडिया किस डिवाइस को सौंपा गया है - यहां हम मान लेंगे कि यह है /dev/sdb। सभी विभाजन हटाएं, एक नया स्थान ले लें, सभी प्रकार को एनटीएफएस (7) पर सेट करें, और इसे बूट करने योग्य सेट करना याद रखें:

# cfdisk /dev/sdb  या  fdisk /dev/sdb  (विभाजन टाइप 7, तथा बूट झंडा)

एनटीएफएस फाइल सिस्टम बनाएं:

# mkfs.ntfs -f /dev/sdb1

विंडोज 7 लिखें एमबीआर यूएसबी स्टिक पर (विंडोज 8 के लिए भी काम करता है), यहां कई विकल्प हैं:

  1. # ms-sys -7 /dev/sdb
  2. या (उदाहरण के लिए नए उबंटू इंस्टॉल पर) sudo lilo -M /dev/sdb mbr (जानकारी)
  3. या (यदि syslinux स्थापित है), तो आप चला सकते हैं sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb

माउंट आईएसओ और यूएसबी मीडिया:

# माउंट-लूप win7.iso / mnt / iso
# माउंट / देव / एसडीबी 1 / एमएनटी / यूएसबी

सभी फाइलों पर कॉपी करें:

# cp -r /mnt/iso/* /mnt/usb/   ... या अपने सिस्टम के मानक जीयूआई फाइल-ब्राउजर का उपयोग करें

कॉल sync यह सुनिश्चित करने के लिए कि सभी फाइलें लिखी गई हैं।

Gparted खोलें, यूएसबी ड्राइव का चयन करें, फ़ाइल सिस्टम पर राइट-क्लिक करें, फिर "ध्वज प्रबंधित करें" पर क्लिक करें। बूट चेकबॉक्स को चेक करें, फिर बंद करें।

...और आपने कल लिया।

इसके बाद, आप शायद अपने इंस्टॉलेशन के लिए अपने यूएसबी मीडिया का बैक अप लेना चाहते हैं और आईएसओ फाइल से छुटकारा पाएं ... बस डीडी का उपयोग करें: # dd if=/dev/sdb of=win7.img

ध्यान दें, यह पूरे डिवाइस की प्रतिलिपि बनाता है! - जो आमतौर पर (अधिक) प्रतिलिपि बनाई गई फ़ाइलों की तुलना में बड़ा होता है। तो इसके बजाय मैं प्रस्ताव करता हूं

# dd count=[(size of the ISO file in MB plus some extra MB for boot block) divided by default dd blocksize] if=/dev/sdb of=win7.img

इस प्रकार उदाहरण के लिए 8 एम अतिरिक्त बाइट्स:

# dd count=$(((`stat -c '%s' win7.iso` + 8*1024*1024) / 512)) if=/dev/sdb of=win7.img status=progress

हमेशा के रूप में, काम करते समय डिवाइस नामों को बहुत सावधानी से जांचें dd

उपरोक्त प्रस्तुत बूट करने योग्य यूएसबी बनाने की विधि Win10 इंस्टॉलर आईएसओ के साथ भी काम करती है। मैंने उबंटू 16.04 को Win10_1703_SingleLang_English_x64.iso (आकार 4,241,291,264 बाइट्स) को 8 जीबी यूएसबी-स्टिक पर कॉपी करने की कोशिश की - गैर-यूईएफआई [गैर-सुरक्षित] बूट में केवल। निष्पादन डीडी रिपोर्ट के बाद:         8300156 + 0 रिकॉर्ड में         8300156 + 0 रिकॉर्ड आउट         4249679872 बाइट्स (4.2 जीबी, 4.0 जीआईबी) की प्रतिलिपि बनाई गई, 412.807 एस, 10.3 एमबी / एस

अगली बार जब आप विंडोज 7 इंस्टॉलर को यूएसबी पर रखना चाहते हैं तो रिवर्स।


179
2017-08-04 15:38



Cfdisk में उपयोग करने के लिए संख्यात्मक विभाजन प्रकार का उल्लेख करना अच्छा होगा (7, 86, 87?) - Johan Dahlin
यह प्रकार 7 के साथ काम किया - Ropez
बस एक नोट: यदि आपके एनटीएफएस फाइल सिस्टम अजीब अनुमति त्रुटियों को देता है जब आप इसे रूट के रूप में भी लिखते हैं, तो सुनिश्चित करें कि आपने ntfs-3g इंस्टॉल किया है। - Jeremy Salwen
मैंने इसे सीधे हार्ड ड्राइव पर करने की कोशिश की, और मुझे यह पता चला कि "विंडोज़ इंस्टॉलेशन स्रोतों तक नहीं पहुंच सकता" जब मैं इसे से बूट करता हूं। - Jeremy Salwen
कॉल sync यह सुनिश्चित करने के लिए प्रतिलिपि के बाद सभी फाइलें लिखी गई हैं - Nicolas Dusart


यदि आप यूईएफआई का समर्थन करते हैं, और विस्तार से, जीपीटी डिस्क का समर्थन करते हैं, तो आप इसे डीडी के साथ पूरा कर सकते हैं।

एक टर्मिनल खोलें, आपको यह पता लगाने की आवश्यकता होगी कि आपका पेंड्रिव कौन सा डिवाइस है। यदि आपके पास ड्राइव घुड़सवार है तो आप "माउंट" टाइप करके और उसके एंट्री को देखकर डिवाइस का नाम पा सकते हैं। निम्नलिखित की तरह कुछ:

/dev/sdb1 on /media/USBDISK type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed)

इस मामले में / dev / sdb का पहला भाग / मीडिया / यूएसबीडिस्क पर रखा गया है। रूट खोल खोलें और ड्राइव को अनमाउंट करें।

umount /dev/sdb1

उस निर्देशिका पर जाएं जहां आपका आईएसओ रूट खोल में संग्रहीत है और निम्न में टाइप करें: (windowso.iso को जो भी आईएसओ कहा जाता है, और / dev / sdb को अपने यूएसबी स्टिक के डिवाइस आईडी के साथ बदलें)।

dd if=windows7.iso of=/dev/sdb

यदि आपका मदरबोर्ड एक पेंड्रिव से बूटिंग का समर्थन करता है तो इसे बूट करने में सक्षम होना चाहिए। यह पेंडरिव पर इंस्टॉलर को ओएस नहीं ही मिलेगा।


13
2018-05-11 14:28



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


पीसीएम्बेल का सुझाव अच्छा है लेकिन आप एमबीआर को भी साफ़ करना चाहते हैं, लिनक्स समकक्ष नीचे है

मैंने कोशिश की और यह काम किया (मुझे यकीन नहीं है कि डीडी विधि क्यों विफल रही लेकिन लगता है कि विभाजन ntfs होना चाहिए?):

  • काम करें जो / dev / device आपकी यूएसबी फ्लैश ड्राइव है और इसे अनमाउंट करें
  • एमबीआर साफ़ करें: डीडी अगर = / dev / शून्य = / dev / device bs = 446 count = 1
  • fdisk / dev / डिवाइस चलाएं
  • सभी विभाजन हटाएं और 1 प्राथमिक विभाजन बनाएं, इसे बूट करने योग्य बनाएं, फिर परिवर्तनों को सहेजें
  • mkfs.ntfs / dev / device1 चलाएं (विभाजन 1)
  • आपके द्वारा बनाए गए विभाजन पर विंडोज़ इंस्टॉल आईएसओ की पूरी सामग्री कॉपी करें

5
2018-03-27 08:24





के बजाय

dd if=windows7.iso of=/dev/sdb

आप लिखते हैं root,

dd if=windows7.iso of=/dev/sdb1 

(अंत में 1 जोड़ें या जो भी आपका यूएसबी ड्राइव रखा गया है।)


-4
2017-12-22 18:20



नहीं, पिछले उत्तरों के अनुसार = sdb सही है। - James Broadhead
यह सीधे तौर पर गलत है। - lukad
-1: dd विभाजन के लिए नहीं, उपकरणों को लिखने की जरूरत है - ssc