부팅 가능한 USB를 만들 때 왜 'dd'가 작동하지 않습니까?


36

최근에 리눅스 민트의 부팅 가능한 USB를 만들고 싶었습니다. 'dd'명령을 사용하여 부팅 가능한 USB를 만들 수 있는지 여부에 대한 충고가 많았습니다. ISO를 다운로드하고 시도하기로 결정했습니다. dd는 확실히 이미지를 USB 스틱에 올려 놓았지만 부팅 할 수 없었습니다. 그래서 내 질문은이 작업을 수행하는 마법의 성분은 무엇입니까? 그렇지 않으면 왜이 접근법이 지속 되었습니까?

이것은 내가 사용한 명령입니다.

dd if=/mint/iso/image of=/dev/sdb1 oflag=direct 

@sawdust는 게시 된 답변이 "아니오"라고 말하면서이 기사 ( community.linuxmint.com/tutorial/view/744 )가 올바른 절차임을 나타냅니다.
Dave G

1
@DaveG-흥미롭게도 소스 파일이 "하이브리드 ISO 이미지"인 경우 'dd'는 유용한 명령입니다. 그러나 모든 iso에 대한 일반적인 절차는 아닙니다 . 아마도 그 차이는 충돌하는 조언 jdowner가 발생한 이유 일 것입니다.
톱밥 5

@sawdust 추가 설명을 주셔서 감사합니다.
Dave G

EFI 부팅 시스템에 사용할 시스템 고정 장치가있을 수 있지만 시스템은 "클래식"부팅을 사용하도록 구성되어 있습니다. Linux Mint USB 스틱에서 볼 수 있습니다.
David Tonhofer

다음은 recalcitrant iso 이미지에 대한 간단한 / 천재적인 해결 방법입니다 (Ubuntu Live ISO 기반). 1) "/ dev / sdX1"과 같은 파일 시스템이 있도록 스틱을 포맷합니다. 2) 스틱을 "/ mnt / usb로 마운트합니다. "(예 : 3) stick : grub2를 설치합니다 : grub2-install --boot-directory /mnt/usb/boot/ /dev/sdX, 4) 이전에 다운로드 한 ISO 이미지 (예 :"foolinux.iso ")를 stick으로 복사합니다. cp foolinux.iso /mnt/usb/5)"/mnt/usb/boot/grub2/grub.cfg "파일을 만듭니다. 부츠는 USB 메모리에 ISO 이미지 존재에서 (계속) 리눅스
데이비드 Tonhofer

답변:


32

/ dev / sdb의 파티션 1에 이미지를 쓰고 있습니다

이것을 다음 명령으로 변경하십시오.

dd if=/mint/iso/image of=/dev/sdb oflag=direct

이 정보는 여기 에서 얻었 습니다


2
내가하고있는 일 : sudo dd if =. / debian-8.4.0-powerpc-DVD-1.iso of = / dev / rdisk3 bs = 1m 그리고 부팅 할 수없는 아이디어가 있습니까?
Yusufk

rdisk3 파티션 또는 원시 디스크입니까? 이미지를 특정 파티션에 쓰려고합니다
Dave G

1
나는 / dev / sdb를하고 있는데 여전히 부팅 할 수 없다
holms

rdisk3은 mac afaik의 세 번째 디스크입니다. Yusufk와 같은 문제가 있습니다. UEFI와 관련이 있는지 확인해야합니다.
gavit

10

이미지를 첫 번째 파티션에 복사했습니다. / dev / sdb1 대신 / dev / sdb로 복사하십시오.

실제 메커니즘은 사용하는 이미지 유형에 따라 약간 씩 다르지만 간단한 DOS / MBR 이미지의 경우 올바른 파티션 테이블을 가져와야합니다 (부팅 가능한 파티션이 부팅 가능한 것으로 표시되어 있고 MBR- 파티션 테이블이 아닌 초기 512 바이트-초기 부팅 코드 포함


전체 ISO를 다른 파티션으로 다시 복사하려고 시도하는 대신 원래 이미지를 복사 한 파티션에서 부팅 플래그를 설정하면 충분할 수 있습니다 (이 답변에서 암시 된 것처럼)
GrayedFox


1

부트 로더에 BPB를 작성해야 할 수도 있습니다. http://f.osdev.org/viewtopic.php?f=1&t=19681 에서 2009 년 4 월 24 일 금요일 오전 9시 06 분에 Dex의 게시물을 참조 하십시오

요점은 "[USB 펌웨어] 사용자가 플로피 에뮬레이션을하고 BPB가 없으면 부팅되지 않습니다"라는 것입니다.

그 충고를 가지고이 문제를 해결할 수있었습니다. 나는 리눅스를 사용하므로 dd 명령은 다음과 같습니다.

sudo dd bs=512 count=2880 if=IMG.bin of=/dev/sdb

sdb를 USB 장치로 바꾸고 싶을 것입니다. 당신은 그것을 실행하여 찾을 수 있습니다

ls -l /dev/ | grep sd

리눅스가 실행되는 동안 USB를 삽입하기 전후. 예를 들어 sdb1 및 sdb가 표시되면 색인화되지 않은 옵션을 선택하십시오.


0

HDD에서 부팅을 시도하기 전에 메인 보드가 USB 장치에서 부팅되도록 설정되어 있습니까? 나는 그것이 당신의 유일한 문제 일 수 있다고 생각합니다- dd당신이 볼 수있는 것처럼 많이 사용하지는 않습니다 .


1
이것은 특히 오래된 컴퓨터에서 작업하기 때문에 생각했던 문제였습니다. 따라서 대상 컴퓨터에서 작동하지 않을 때 아내의 랩톱에서 부팅 순서를 설정하고 (그녀에게 말하지 마십시오) 부팅 순서도 설정하지 않았습니다.

0

또한이 문제가 몇 번 발생했습니다.

내가 대부분의 시간 동안 작동하는 것으로 밝혀진 것은 먼저 드라이브를 0으로 채우는 것입니다.

  1. X를 드라이브 문자 또는 숫자로 변경하여 찾으십시오.

    • 맥: diskutil list
    • 리눅스 : lsblk
  2. 드라이브 제로 채우기

    • 맥: dd if=/dev/zero of=/dev/rdiskX bs=4m
    • 리눅스 : dd if=/dev/zero of=/dev/sdX bs=4M
  3. 이미지를 다시 dd

(4meg 블록 크기가 가장 빠릅니다)

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