dd를 통한 512B ~ 4KiB (고급 형식) HDD 복제


1

dd기존의 섹터 당 512 바이트 HDD (특정 파티션이 아닌 전체 디스크)를 사용하여 최신 섹터 당 4 킬로바이트 Advanced Format드라이브 로 복제하는 가장 좋은 방법은 무엇입니까 ? 어떤 옵션을 사용해야합니까? 그들은 중요합니까?


다음은 읽고 싶은 관련 질문입니다. 또한 필요한 것보다 더 복잡하게 만들고 있습니다. 장치를 시작할 때 1MB 파티션을 만들면 정렬되고 나머지는 비워 둡니다. 장치의 펌웨어에 에뮬레이션이있을 수 있습니다. 여기에 더 추가 읽기
Ramhound

나는 당신이 언급 한 질문 (및 대답)을 읽었지만 내 질문은 더 간단하고 구체적 dd입니다. 올바른 정렬을 위해 드라이브를 준비하는 방법을 묻지 않습니다. 알고 싶은 것은 전체 디스크 구조 (및 데이터)를 완전히 복사하는 방법입니다. 수정하지 않고.
TranslucentCloud

답변:


1

어떤 종류의 고급 포맷 드라이브입니까? "AF"로고 (드라이브가 512 바이트 섹터를 인터페이스에 표시한다는 의미, 즉 실제로 "512e"드라이브 임) 또는 "4Kn"로고가 있습니까?

전자의 경우 특별한 작업을 수행 할 필요가 없습니다. 적절한 파티션 정렬이 좋은 생각이지만 (성능에 큰 차이를 만들 수는 있지만) 레거시 드라이브처럼 취급 할 수 있습니다.

후자의 경우 파일 시스템 메타 데이터가 변경되어야하므로 "수정없이"복사 할 수 없습니다 . 예를 들어 512e "4GB"드라이브는 0에서 약 7,812,500,000까지의 LBN을 가지지 만 실제 4K 기본 "4GB 드라이브"의 LBN은 최대 약 976,562,500에 불과합니다. 따라서 섹터 당 512 바이트 드라이브의 메타 데이터에있는 LBN은 4Kn 드라이브에서 의미가 없습니다.


해당 하드 드라이브는 WD30EZRX로, 512B 논리 섹터와 4KB 물리를 가지며 Advanced Format 드라이브로 판매됩니다.
TranslucentCloud

그렇게 생각. 512e 드라이브입니다. 4Kn 드라이브는 "엔터프라이즈"시장 밖에서는 들리지 않으며 그에 따라 가격이 책정됩니다. 따라서 파티션 정렬 문제를 제외하고이를 섹터 당 512 바이트 드라이브로 취급 할 수 있습니다.
Jamie Hanrahan

설명을 해주셔서 감사합니다.
TranslucentCloud

1

좋아, 나는 내가 한 일을 답으로 게시하는 것이 가치가 있다고 생각한다.

다음 명령을 사용하여 드라이브를 복제했습니다.

dd if=/dev/sda of=/dev/sdb ibs=512 obs=4096

여기서 첫 번째 옵션 ibs은 한 번 dd에 512 바이트를 소스에서 읽고 한 번 obs에 4096 바이트를 대상에 쓰도록 지시합니다.

전체 절차는 아무런 문제없이 진행되었습니다. 완료된 후 이전 드라이브의 연결을 끊고 새 드라이브로 부팅을 시도했습니다. 부팅되었고 모든 파티션이 올바르게 표시되었습니다.

정렬이이 고급 포맷 드라이브에 적합한 지 확인하기 위해 WD AlignWestern Digital 웹 사이트에서 도구를 다운로드 했으며 모든 것이 올바르게 정렬되어 있음을 보여줍니다.

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

추가 옵션이 이것에 사용되었는지는 모르겠습니다.


0

512e 드라이브를 사용하고 있기 때문에 dd 예제는 불필요합니다. dd if = / dev / sda of = / dev / sdb bs = 2M (사용하려는 경향이 있음)을 간단히 사용할 수 있습니다. 실제 문제는 512n에서 4Kn으로 진행되고 있으며 기본적으로 잘리지 않고 건조하지 않습니다. 대부분의 경우, 부트 로더 재구성 등을 포함하여 모든 파티션 및 cp -a를 다시 구성하는 것이 가장 좋습니다.

최소한의 비파괴적인 재 파티셔닝으로 512n에서 4Kn 사이에서 앞뒤로 이동할 수 있는지 여부는 파티션에 8의 512 배수 (512 * 8 = 4096)를 사용했는지 여부에 따라 다릅니다.

예:

512n partition under gdisk:

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048            4095   1024.0 KiB  EF02  linux-bios
   2            4096        41943006   20.0 GiB    8E00  linux-lvm

4Kn translation after dd'ing (from 512 to 4096 physical and logical),
then re-repartitioning:

Number  Start (sector)    End (sector)  Size       Code  Name
   1             256             511   1024.0 KiB  EF02  linux-bios
   2             512        5242875.75 20.0 GiB    8E00  linux-lvm

으악! 소수점 (41943006 + 1 / 8)을 확인 하시겠습니까? 그것은 작동하지 않을 것입니다.

유일한 방법은 새 드라이브에 20.0 GiB 이상이 있고 추가 4kn 섹터 (5242875 + 1)를 추가 한 다음 기본 파일 시스템, lvm 등의 크기를 조정하는 것입니다.

이제 8의 배수를 사용하여 512n 드라이브를 분할 한 경우 위의 첫 번째 (512n) 파티션 테이블은 다음과 같습니다.

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048            4095   1024.0 KiB  EF02  linux-bios
   2            4096        41942999   20.0 GiB    8E00  linux-lvm

And the proper 4Kn translation would look like this:

Number  Start (sector)    End (sector)  Size       Code  Name
   1             256             511   1024.0 KiB  EF02  linux-bios
   2             512         5242875   20.0 GiB    8E00  linux-lvm

(41942999 + 1) / 8 = 5242875

이야기의 교훈 : 미래에 4Kn 드라이브를 사용할 계획이라면 512n 드라이브를 8의 배수로 파티션하고 파티션 테이블을 적절하게 다시 작성하는 한 괜찮을 것입니다.

참고 : 디스크 식별자뿐만 아니라 파티션 GUID에 대해서도 가능한 GUID 복제를 잊지 마십시오.

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