DD 명령 줄 도구를 사용하여 USB 스틱에서 MBR을 만드는 방법


16

좋아, Lion을 실행하는 Mac에서 USB 키에 BOOTABLE Windows7 이미지를 만들려고합니다. 내 이미지는 .iso 형식입니다. 나는 시도했다 :

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

그리고 이것은 Mac에서 DISK UTILITY를 제외하고 파일을 작성하는 데 성공했으며 파티션 유형을 'Master Boor Record'가 아닌 GUID Partition Table로 표시합니다. Vista 컴퓨터에서 키를 부팅하면 "USB 장치에 부팅 섹터가 없습니다"라는 오류가 발생합니다

내가 알 수 있듯이 DD 명령의 bs = 1m은 부팅 섹터에 1MB를 남겨 두어야하지만 어떤 이유로 USB 키 의이 영역이 올바르게 설정되지 않아 부팅됩니다

이 문제를 해결하거나 dd를 사용하여 부팅 가능한 CD 이미지를 작성하여 부팅 가능한 USB 드라이브로 만들 수 있습니까?

참고 : 내가 읽은 지침에서 DD를 사용하기 전에 Win7.iso의 이름을 Win7.dmg로 바꾸는 것이 좋습니다. 지금이 단계를 시도해 볼 수 있지만 USB 드라이브에 이미지를 기록하는 데 1.99 시간이 걸리므로 여기서 시행 착오를 거칠 수 있습니다. 감사합니다.


.iso파일에 유효한 부팅 섹터가 있는지 확인 했습니까 ? 부팅 가능한 CD에서 직접 리핑하면 CD에 2048 바이트 섹터가 있고 대부분의 플래시 드라이브에 512 바이트 섹터가 있으므로 문제가 발생했을 수 있습니다.
LawrenceC

참고로 DD는 파일을 숨기고 복사하는 유틸리티입니다. 파티션 테이블이나 부트 섹터에 대해서는 아무것도 모릅니다. bs = 1m은 한 번에 최대 1MB까지 읽고 쓰는 것을 의미합니다. 드라이브 앞쪽에 공간을 남기려면 seek = BLOCKS를 사용하십시오. 여기서 블록 = 섹터 크기는 기본적으로 512입니다.
Matt H

@MattH 당신은 "FYI. DD는 파일을 은밀하고 복사하는 유틸리티입니다."라고 썼습니다. <--- 그것은 너무나 잘못이며 당신은 그것을 알고 있습니다. 그리고 그것이 알고있는 것에 관해서는, "파티션 테이블에 대해 아무것도 모른다"고 말합니다. 잘 모르겠지만 여전히 영향을 줄 수 있습니다. 파일이 아닌 파티션 또는 전체 하드 드라이브에서 원시 바이트를 복사하는 것입니다. 그리고 복사 된 것은 파일을 포함 할 수 있으며 (나는 전문가가 아니지만) 파티션 테이블을 포함한다고 가정합니다.
barlop

dd는 CD ISO를 USB 용 이미지로 변환하는 올바른 도구처럼 들리지 않습니다. USB에 win7 iso를 넣는 방법은 여러 가지가 있으며 dd가 그중 하나라고 생각하지 않습니다! 적어도 아무도 사용하지 않을 것입니다! dd / ddrescue는 두 개의 동일한 하드 드라이브가 있고 서로 복사하려는 경우에 좋습니다. 또는 하드 드라이브에 오류가있어 다른 이미징 소프트웨어가 실패 할 때 이미지를 만들려는 경우.
barlop

@barlop-dd man page- "피연산자에 따라 파일을 변환하고 변환하고 서식을 지정합니다."
Matt H

답변:


7

dd를 수행하기 전에 디스크 유틸리티 옵션을 사용하여 파티션 유형을 마스터 부트 레코드로 설정하십시오.

여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오


4
실패했습니다. 스크린 샷에 묘사 된 설정을 알고 있었지만이 작업을 먼저 수행 한 다음 DD를 수행 한 결과 결과 이미지가 여전히 부트 섹터를 찾지 못했습니다. DD 명령은 디스크 유틸리티가 무엇이든간에 휴지통을 비우는 것처럼 보이며 매우 낮은 수준의 원시 모드로 쓰는 것처럼 보입니다. 나는 이것이 효과가 있었지만 솔직히 그렇지 않았기를 바랍니다. 디스크 유틸리티가 복원을 위해 .iso 이미지를 지원하지 않는다는 바보입니다.
Lana Miller

5

OSX에서 부팅 가능한 USB 디스크를 만들 때 비슷한 문제가 발생했습니다. 문제는 UnetBootin 이 USB 디스크에서 마스터 부트 레코드를 올바르게 설정하지 않았다는 것입니다. Disk Util 및 fdisk를 사용하여이 작업을 수동으로 수행해야합니다.

  1. 올바른 MBR을 사용하여 디스크 유틸리티에서 디스크를 포맷하십시오.

    1. 디스크 유틸리티 열기
    2. USB 장치를 선택하십시오
    3. 파티션을 클릭하십시오
    4. 파티션 레이아웃에서 1 개의 파티션을 선택하십시오
    5. 옵션에서 "마스터 부트 레코드"를 선택하십시오
    6. 형식 유형에서 MS-DOS (FAT)를 선택하십시오.
    7. 적용을 클릭 한 다음 파티션을 클릭하십시오.
    8. 디스크 유틸리티 닫기
      USB 디스크를 지우고 올바른 부팅 레코드로 설정합니다
  2. SysLinux 프로젝트에서 MBR 바이너리 설치

    1. 명령 줄 diskutil을 사용하여 USB 드라이브의 장치 이름을 찾으십시오.
      diskutil 목록
    2. 명령 행을 사용하여 USB 드라이브를 마운트 해제하십시오. 주의 : 장치 참조 (내 경우에는 / dev / SOMEdisk2)를 이전 단계에서 식별 한 올바른 USB 키로 바꿔야합니다. 이는 각 컴퓨터마다 변경됩니다.
      diskutil unmountDisk / dev / SOMEdisk2
    3. 파티션을 활성으로 표시 한 다음 다시 마운트 해제하십시오.
      sudo fdisk -e / dev / SOMEdisk2
      인쇄
      f 1
      쓰다
      인쇄
      출구
      diskutil unmountDisk / dev / SOMEdisk2
    4. Syslinux를 다운로드 하고 mbr.bin 파일을 추출하십시오
    5. MBR 설치
      sudo dd conv = notrunc bs = 440 count = 1 if = mbr.bin of = / dev / SOMEdisk2
      주의 : 4 단계와 5 단계에 대한 추가 도움이 필요하면 전체 지침을 참조하십시오 .
  3. UnetBootin을 사용하여 OS 설치 파일 설치

    1. UnetBootin을 아직 다운로드 하지 않은 경우 다운로드하여 설치 하십시오.
    2. 응용 프로그램을로드하고 원하는 배포를 선택한 다음 확인을 클릭하십시오.
    3. 완료되면 USB 키를 꺼내어 사용하십시오

전체 지침


안녕하세요 폴, 당신이 링크를 게시하는 경우 너무 친절하고 더 많은 내용을 추가하십시오. 마음에 들지 않으면 단계별 지침을 추가했습니다. 그렇지 않으면 편집을 되돌릴 수 있습니다
nixda

문제 없습니다. 답을 얻는 것이 더 빠르고 쉬워지는 것을 알 수 있습니다. 그래서 다음에 그렇게 할 것입니다. 나를 위해 해 주셔서 감사합니다 :)
Paul Maunders

syslinux zip에는 3 개의 mbr.bin이 있는데, 어느 것을 사용해야합니까?
Olivier Lalonde

표준 syslinux-5.00 / mbr / mbr.bin을 사용하십시오
Paul Maunders

그것은 나를 위해 작동하지 않았다. 그래도 "비 시스템 디스크"메시지가 나타납니다.
폐기물

1

MBR (Master Boot Record)로 USB 키 포맷

  • 터미널에서 : diskutil list

  • USB 키 이름 을 적어 두십시오 (광산은 / dev / disk1 임).

  • 터미널 : diskutil eraseDisk MS-DOS "WINDOWS10"MBR / dev / disk1

  • / dev / disk1을 USB 키 이름으로 바꾸십시오.

Windows 10 디스크 이미지 마운트

  • 디스크 유틸리티에서 : 파일›디스크 이미지 열기›.iso를 선택하십시오.

  • 왼쪽 창에서 : 새로 마운트 된 이미지를 클릭하십시오

  • 오른쪽 창에서 : 이름을 선택하고 복사하십시오 : CCSA_X64FRE_FR-FR_DV5

디스크 이미지를 WINDOWS10 USB 키에 복사

  • 터미널에서 : cd / Volumes

  • 터미널에서 : cp -R CCSA_X64FRE_FR-FR_DV5 / WINDOWS10

  • 예제의 이미지 이름을 디스크 이미지 이름으로 바꾸십시오.

  • 끝에 있는 슬래시 (예에서 DV5 이후) 가 중요합니다.

  • 진행 표시기가없는 USB 2.0 USB 키에 복사하는 데 90 분 이상이 걸렸습니다.


0

이 방법은 dd를 사용하지 않으며 테스트하지 않았습니다.

UNetBootIn 을 사용 하여 ISO의 파일 시스템을 USB 드라이브로 전송할 수 있어야합니다 . UNetBootIn은 부팅 가능한 CD / DVD 이미지를 USB 드라이브로 전송하기위한 오픈 소스, 크로스 플랫폼 유틸리티입니다.

UNetBootIn (Windows, Mac OS X 및 Linux에서 실행)을 실행하고 Disk Image라디오 버튼을 선택하십시오 . 그런 다음 ISO드롭 다운 메뉴에서 선택 하고 (ISO가 기본값 임) ISO 파일의 경로를 경로 필드에 넣습니다. 거기에서 전송할 USB 드라이브를 선택하고 확인을 클릭하십시오.

여기에 이미지 설명을 입력하십시오


2
나는 그것을 테스트했는데, 작동하는 것처럼 보였고 부트 섹터가 발견되었지만 '운영 체제 누락'에 대해 경고합니다. 그것이 내가 사용한 이미지에 문제가 있는지 확실하지 않지만 의심합니다. 부트 섹터를 올바르게 작성하는 것처럼 보였으므로 조금 더 놀아 볼 것입니다.
Lana Miller

@LanaMiller Windows 7 Professional x64에서 USB 스틱으로 부팅하려고 할 때도 같은 오류가 발생합니다. 문제를 해결 했습니까?
Chris-Top

0

여기서 답을 찾았 습니다.

# 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/
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.