`dd`, iso 이미지 및 Linux 장치에 대한 일반적인 질문

`dd`, iso 이미지 및 Linux 장치에 대한 일반적인 질문

ISO 이미지(Windows 설치 디스크)가 있지만 DVD를 굽고 싶지 않습니다. 부팅 가능한 USB 플래시 드라이브를 만들고 싶습니다. 이 작업을 수행하기 위해 Linux 도구를 사용하고 싶습니다.

몇 가지 요리법을 찾았고 다음 dd과 같은 도구를 사용하도록 제안했습니다.

dd if=/path/to/my.iso of=/dev/sdx

(여기있어https://www.linux.com/blog/how-burn-iso-usb-drive)

또 다른 방법에서는 먼저 USB에 일부 파티션을 생성할 것을 제안합니다(fe터미널: iso에서 부팅 가능한 USB 생성) 제가 보기엔 이게 이상해 보이네요.

내가 아는 한, 플래시 드라이브는 단지 저장 장치일 뿐입니다. 이는 주어진 인덱스를 기반으로 데이터 블록을 저장/반환하는 하드웨어일 뿐입니다. 맞아?

Linux는 장치를 통해 이 저장소에 대한 액세스를 제공합니다 /dev/sdx( x어떤 문자든 가능하며 제 경우 장치 이름은 입니다 /dev/sdb). 이 장치를 통해 USB 스틱에 있는 모든 데이터에 액세스할 수 있습니다. 맞습니까?

dd명령은 단순히 파일 내용을 비트 단위(즉, 블록 단위)로 읽고 지정된 장치에 데이터를 씁니다. 입력 파일이 충분히 크면 USB 드라이브의 모든 데이터를 덮어쓰게 됩니다. 파티션, 파일 시스템 유형 등에 대한 정보는 유지되지 않습니다. 맞습니까? 그렇다면 dd명령 전에 USB 드라이브를 분할/포맷하는 용도는 무엇입니까?

명령 결과가 dd예상한 것과 다릅니다. 완료되면 Linux 컴퓨터에서 USB 드라이브의 파일을 볼 수 있지만 USB 드라이브가 부팅되지 않고 Windows에서 전혀 읽을 수 없습니다(USB 드라이브를 포맷하는 것이 좋습니다).

부팅 가능한 USB 스틱(rufus 또는 yumi 등)을 만들기 위해 몇 가지 도구를 사용할 예정인데 지금은 문제가 되지 않습니다. 문제는 왜 dd이런 목적 으로 사용할 수 없는지 이해가 되지 않는다는 것입니다 .

위에서 언급한 방법이 모든 ISO 이미지에 작동하지 않을 수 있습니까? 무슨 일이 일어나고 있는지 이해하도록 도와주세요.

답변1

복제 및 추출

ISO 이미지(Windows 설치 디스크)가 있지만 DVD를 굽고 싶지 않습니다. 부팅 가능한 USB 플래시 드라이브를 만들고 싶습니다. 이 작업을 수행하기 위해 Linux 도구를 사용하고 싶습니다.

몇 가지 요리법을 찾았고 다음 dd과 같은 도구를 사용하도록 제안했습니다.

dd if=/path/to/my.iso of=/dev/sdx

이것이 복제입니다( dd다른 복제 도구를 사용하여 수행됨).

(여기있어https://www.linux.com/blog/how-burn-iso-usb-drive)

또 다른 방법에서는 먼저 USB에 일부 파티션을 생성할 것을 제안합니다(fe 터미널: iso에서 부팅 가능한 USB 생성) 제가 보기엔 이게 이상해 보이네요.

이는 추출 도구를 통해 수행됩니다.

복제 및 추출은 실행 가능하고 일반적으로 사용되는 방법입니다. 두 가지 방법 모두에 대한 다양한 도구가 있습니다.

iso 파일이 혼합 iso 파일인 경우 CD/DVD 디스크에 구워 부팅 드라이브를 만들 수 있습니다.그리고USB 플래시 드라이브, 메모리 카드, HDD 또는 SSD와 같은 대용량 저장 장치에 복제합니다. iso 파일이 있다면아니요iso 파일을 혼합하면 CD/DVD 디스크에 구워 부팅 드라이브를 만들 수 있지만 대용량 저장 장치에서는 작동하지 않습니다. 그러나 추출 도구를 사용하여 부팅 장치를 만들 수 있습니다(올바른 파티션 테이블을 생성하고 iso 파일에서 관련 콘텐츠를 대용량 저장 장치로 추출하여).

내가 아는 한, 플래시 드라이브는 단지 저장 장치일 뿐입니다. 이는 주어진 인덱스를 기반으로 데이터 블록을 저장/반환하는 하드웨어일 뿐입니다. 맞아?

예.

Linux는 장치를 통해 이 저장소에 대한 액세스를 제공합니다 /dev/sdx( x 어떤 문자든 가능하며 제 경우 장치 이름은 입니다 /dev/sdb). 이 장치를 통해 USB 스틱에 있는 모든 데이터에 액세스할 수 있습니다. 맞습니까?

예.

dd명령은 단순히 파일 내용을 비트 단위(즉, 블록 단위)로 읽고 지정된 장치에 데이터를 씁니다. 입력 파일이 충분히 크면 USB 드라이브의 모든 데이터를 덮어쓰게 됩니다. 파티션, 파일 시스템 유형 등에 대한 정보는 유지되지 않습니다. 맞습니까? 그렇다면 dd명령 전에 USB 드라이브를 분할/포맷하는 용도는 무엇입니까?

예, 따라서 복제하기 전에 USB 드라이브를 분할/포맷할 필요가 없습니다. 어쨌든 모든 흔적은 사라질 것입니다.

명령 결과가 dd예상한 것과 다릅니다. 완료되면 Linux 컴퓨터에서 USB 드라이브의 파일을 볼 수 있지만 USB 드라이브가 부팅되지 않고 Windows에서 전혀 읽을 수 없습니다(USB 드라이브를 포맷하는 것이 좋습니다).

대부분의 주요 Linux 배포판은 복제 시 USB 부팅 드라이브를 생성하는 하이브리드 iso 파일을 제공합니다. 그러나 전부는 아닙니다. 예를 들어 Knoppix는 아닙니다(그러나 Knoppix를 사용하여 iso 파일을 처리할 수 있습니다 isohybrid).

Windows 7-10 iso 파일은 하이브리드 iso 파일이 아닙니다. 따라서 USB 부팅 드라이브를 생성하려면 추출 방법(수동 또는 도구 사용)이 필요합니다.

부팅 가능한 USB 스틱(rufus 또는 yumi 등)을 만들기 위해 몇 가지 도구를 사용할 예정인데 지금은 문제가 되지 않습니다. 문제는 왜 dd이런 목적 으로 사용할 수 없는지 이해가 되지 않는다는 것입니다 .

위에서 언급한 방법이 모든 ISO 이미지에 작동하지 않을 수 있습니까? 무슨 일이 일어나고 있는지 이해하도록 도와주세요.

링크

help.ubuntu.com/community/Installation/iso2usb

  • 드라이브 - 대용량 저장 장치
  • 복제 및 추출
  • 너 스스로해라(이것은 무슨 일이 일어나고 있는지 이해하는 데 도움이 됩니다)

복제를 위한 준비가 필요하지 않습니다.

  • dd는 "디스크 파괴자", "데이터 파괴자"라고 불릴 만합니다.
  • 최종 체크포인트가 있는 도구
  • 복제가 작동하지 않는 경우

답변2

사용 방법은 파일 생성 방법 dd에 따라 다릅니다 ..iso

dd 명령은 단순히 파일 내용을 비트 단위(즉, 블록 단위)로 읽고 지정된 장치에 데이터를 씁니다. 입력 파일이 충분히 크면 USB 드라이브의 모든 데이터를 덮어쓰게 됩니다.

이것은 맞습니다. 하지만 dd if=/dev/sdb1 of=test.iso생성 시 실행하면 어떻게 될까요 .iso? 아니면 dd if=/dev/sdb of=test.iso bs=1M seek=1첫 번째 데이터를 건너뛰는 것과 같은 것이 실행 중일까요 1M?

dd기본 파티셔닝 구성표는 신경 쓰지 않습니다. 즉, 사용 방법은 전적으로 블록 장치의 구조와 작성 중인 데이터에 따라 달라집니다.

답변3

이 장치에 연결 하면 dddd'ing이 MBR/GPT를 덮어쓰기 때문에 USB 여유 공간이 손실됩니다.

장치를 분할하면 이미지를 파티션에 쓸 수 있으므로 여유 공간이 보존됩니다. 하지만 해당 파티션에서 부팅하려면 부팅 관리자(grub?)를 조정해야 합니다. 드라이브를 분할하면 sdx1, sdx2...가 생기며 dd if=your.iso of=/dev/sdx1원하는 파티션을 허용하게 됩니다.

여기서 문제는 Windows 설치 디스크를 사용하여 이 작업을 수행하려는 것이며 이는 문제가 될 수 있다는 것입니다. Windows 설치에 DVD 장치가 필요한 경우 DVD 장치가 시작되지 않거나 이미지를 조정해야 하거나 이 확인을 피해야 할 수 있습니다. Linux에서는 많은 배포판이 ISO 자체 부팅을 허용하므로 일이 더 쉽습니다. 다른 배포판에는 부팅 가능한 배포판이 많이 포함된 USB를 갖기 위해 약간의 트릭이 필요할 수도 있습니다.

관련 정보