Jak utworzyć MBR na pamięci USB za pomocą narzędzia wiersza poleceń DD

16

Dobra, próbuję stworzyć obraz systemu Windows 7 na kluczu USB z komputera Mac z systemem Lion. Mój obraz to format .iso. Próbowałem:

sudo dd if=/Users/myusername/Win7.iso of=/dev/disk1 bs=1m

I to udało się zapisać pliki, z wyjątkiem DISK UTILITY na mac, pokazuje typ partycji jako GUID Partition Table, a nie „Master Boor Record”. Uruchamianie klucza na moim komputerze z systemem Vista powoduje błąd „Brak sektora startowego na urządzeniu USB”

Z tego, co mogę powiedzieć, bs = 1m w poleceniu DD powinno pozostawić 1 megabajt dla sektora rozruchowego, ale z jakiegoś powodu ten obszar klucza USB nie jest prawidłowo skonfigurowany, aby mógł zostać uruchomiony

Jak mogę to naprawić lub poprawnie użyć dd do napisania rozruchowego obrazu CD, tak aby był teraz startowym dyskiem USB?

Uwaga: w instrukcjach, o których czytam, zalecili zmianę nazwy mojego Win7.iso na Win7.dmg przed użyciem DD, co nie miało dla mnie żadnego sensu, więc tego nie zrobiłem. Mógłbym teraz spróbować z tym krokiem, ale napisanie obrazu na dysk USB zajmuje 1,99 godziny, więc jest tu ogromna kara za próby i błędy. Dziękuję Ci.

Lana Miller
źródło
Czy zweryfikowałeś, że .isoplik ma prawidłowy sektor rozruchowy? Jeśli zgrałeś go bezpośrednio z rozruchowego dysku CD, coś mogło pójść nie tak, ponieważ dyski CD mają sektory o rozmiarze 2048 bajtów, a większość dysków flash ma sektory 512-bajtowe.
LawrenceC
FYI. DD to narzędzie do ukrywania i kopiowania pliku. Nie wie nic o tabelach partycji lub sektorach rozruchowych. bs = 1m oznacza odczyt i zapis do 1 megabajta naraz. Jeśli chcesz zostawić miejsce z przodu dysku, użyj seek = BLOCKS. Gdzie bloki = rozmiar sektora domyślnie 512.
Matt H
@MattH Napisałeś „FYI. DD to narzędzie do ukrywania i kopiowania pliku”. <--- To jest całkowicie błędne i wiesz o tym. A co do tego, co wie, mówisz „Nie wie nic o tabelach partycji”. Dobrze, że nie, ale wciąż może na nich wpływać. Chodzi o kopiowanie surowych bajtów z partycji lub całego dysku twardego, a nie o plik, i wiesz o tym. A to, co zostanie skopiowane, może zawierać pliki i (chociaż nie jest ekspertem), przypuszczam, że będzie zawierało tabelę partycji.
Barlop
dd nie brzmi jak właściwe narzędzie do konwersji cd iso na obraz dla usb. Istnieje wiele sposobów na umieszczenie iso Win7 na USB i nie sądzę, aby dd było jednym z nich! Przynajmniej nikt normalnie by nie używał! dd / ddrescue jest dobry, jeśli masz dwa identyczne dyski twarde i chcesz kopiować jeden na drugi. lub jeśli na dysku twardym wystąpiły błędy i chcesz zrobić z niego obraz, gdy inne oprogramowanie do przetwarzania obrazu nie działa.
barlop
Strona man @ barlop - dd - „Kopiuj plik, konwertuj i formatuj zgodnie z operandami”.
Matt H

Odpowiedzi:

6

Użyj opcji Narzędzia dyskowego, aby ustawić typ partycji na Główny rekord rozruchowy przed zrobieniem dd.

wprowadź tutaj opis obrazu wprowadź tutaj opis obrazu

kobaltz
źródło
4
To się nie powiodło. Byłem świadomy ustawień przedstawionych na twoich zrzutach ekranu, ale po zrobieniu tego najpierw, a następnie DD, wynikowy obraz nadal nie znajdował sektora rozruchowego. Polecenie DD wydaje się trash niezależnie od tego, co robi dysk. Wydaje się, że pisze w trybie bardzo niskim. Chciałbym, żeby to zadziałało, ale szczerze mówiąc nie, i jego głupota, że ​​dysk util nie obsługuje obrazów .iso do przywrócenia.
Lana Miller
5

Miałem podobny problem podczas próby utworzenia bootowalnego dysku USB z OSX. Problem polegał na tym, że UnetBootin nie skonfigurował poprawnie Master Boot Record na dysku USB. Musisz to zrobić ręcznie za pomocą Disk Util i fdisk.

  1. Sformatuj dysk w Narzędziu dyskowym z poprawnym MBR

    1. Open Disk Utilty
    2. Wybierz urządzenie USB
    3. Kliknij opcję Partycja
    4. Wybierz 1 partycję w układzie partycji
    5. Wybierz „Master Boot Record” w opcjach
    6. Wybierz MS-DOS (FAT) w typie formatu.
    7. Kliknij Zastosuj, a następnie Partycja
    8. Zamknij Narzędzie dyskowe
      Spowoduje to wyczyszczenie dysku USB i skonfigurowanie go z poprawnym rekordem rozruchowym
  2. Zainstaluj plik binarny MBR z projektu SysLinux

    1. Użyj wiersza poleceń diskutil, aby znaleźć nazwę urządzenia dla napędu USB.
      lista diskutil
    2. Odłącz dysk USB za pomocą wiersza poleceń. NB: Pamiętaj, aby zamienić odwołanie do urządzenia (w moim przypadku jest to / dev / SOMEdisk2) z poprawnym dla klucza USB, który zidentyfikowałeś w poprzednim kroku - to się zmieni dla każdego komputera.
      diskutil unmountDisk / dev / SOMEdisk2
    3. Zaznacz aktywną partycję, a następnie odłącz ją ponownie
      sudo fdisk -e / dev / SOMEdisk2
      wydrukować
      f 1
      pisać
      wydrukować
      wyjście
      diskutil unmountDisk / dev / SOMEdisk2
    4. Pobierz Syslinux i rozpakuj plik mbr.bin
    5. Zainstaluj MBR
      sudo dd conv = notrunc bs = 440 count = 1 if = mbr.bin z = / dev / SOMEdisk2
      Uwaga: zobacz moje pełne instrukcje, jeśli potrzebujesz dalszej pomocy w krokach 4 i 5.
  3. Użyj UnetBootin, aby zainstalować pliki instalacyjne systemu operacyjnego

    1. Pobierz i zainstaluj UnetBootin, jeśli jeszcze tego nie zrobiłeś
    2. Załaduj aplikację, wybierz preferowaną dystrybucję, a następnie kliknij OK
    3. Po zakończeniu wysuń klucz USB i użyj go

Pełne instrukcje

Paul Maunders
źródło
Witaj Paul, jeśli po prostu zamieścisz link, bądź uprzejmy i dodaj więcej treści. Dodałem Twoje instrukcje krok po kroku, jeśli nie masz nic przeciwko. W przeciwnym razie możesz cofnąć edycję
nixda
Nie ma problemu, widzę, że szybciej / łatwiej jest dostać się do odpowiedzi, więc zrobię to następnym razem - dzięki za zrobienie tego dla mnie :)
Paul Maunders
W syslinux zip znajdują się 3 mbr.bin, którego należy użyć?
Olivier Lalonde
Wystarczy użyć standardowego syslinux-5.00 / mbr / mbr.bin
Paul
Dla mnie to nie zadziałało. Mimo to mam komunikat „Dysk systemowy”.
marnuj
1

Sformatuj klucz USB za pomocą głównego rekordu rozruchowego (MBR)

  • w Terminal: lista diskutil

  • zanotuj nazwę swojego klucza USB (mój był / dev / disk1)

  • w Terminalu: diskutil eraseDisk MS-DOS „WINDOWS10” MBR / dev / disk1

  • zastąp / dev / disk1 nazwą swojego klucza USB

Podłącz obraz dysku z systemem Windows 10

  • w Disk Utility: wybierz File ›Open Disk Image› wybierz .iso

  • w lewym okienku: kliknij nowo zamontowany obraz

  • w prawym okienku: wybierz nazwę i skopiuj: coś takiego jak CCSA_X64FRE_FR-FR_DV5

Skopiuj obraz dysku na klucz USB WINDOWS10

  • w Terminal: cd / Volumes

  • w Terminalu: cp -R CCSA_X64FRE_FR-FR_DV5 / WINDOWS10

  • zastąp nazwę obrazu w przykładzie nazwą obrazu dysku

  • ukośnik na końcu (po DV5 w przykładzie) jest ważny

  • ponad 90 minut zajęło skopiowanie na klucz USB 2.0 bez wskaźnika postępu

Andrew Swift
źródło
0

Ta metoda nie używa dd ani jej nie testowałem.

Powinieneś być w stanie użyć UNetBootIn do przeniesienia systemu plików w ISO na dysk USB. UNetBootIn to open-source, wieloplatformowe narzędzie do przesyłania startowych obrazów CD / DVD na dyski USB.

Uruchom UNetBootIn (działa w systemie Windows, Mac OS X i Linux) i wybierz Disk Imageprzycisk opcji. Następnie wybierz ISOz rozwijanego menu (ISO jest domyślne) i umieść ścieżkę do pliku ISO w polu ścieżki. Następnie wybierz żądany dysk USB, do którego chcesz go przesłać, i kliknij OK.

wprowadź tutaj opis obrazu

Andrew Lambert
źródło
2
Przetestowałem to, wydawało się, że działa, sektor rozruchowy został znaleziony, ale ostrzega przed „brakującym systemem operacyjnym”. Nie jestem pewien, czy jest to problem z obrazem, którego użyłem, ale wątpię w to. Będziemy grać z tym trochę więcej, ponieważ wydawało się, że poprawnie napisał sektor rozruchowy.
Lana Miller
@LanaMiller Dostaję ten sam błąd, podczas próby uruchomienia za pomocą pamięci USB z Windows 7 Professional x64, czy udało Ci się go rozwiązać?
Chris-Top
0

Właśnie znalazłem tutaj odpowiedź

# fdisk /dev/sdY

create single partition type 7+bootable partition

# mkfs.ntfs -f /dev/sdY1
# ms-sys -7 /dev/sdY

# mount -o loop win7.iso /mnt/iso
# mount /dev/sdY1 /mnt/usb
# cp -r /mnt/iso/* /mnt/usb/
holms
źródło