디스크의 압축 이미지 생성 - 예를 통한 Linux
장치 "/dev/sdc"도 파일(Linux의 다른 모든 것과 마찬가지로)이므로
gzip
명령에 직접 제공할 수 있습니다. 인수로:gzip -c /dev/sdc > /path_to_image.gz
또는 stdin 리디렉션을 통해:
gzip </dev/sdc >/path_to_image.gz
이것이 작동하는 동안(실제로 매우 효율적임) 읽기 부분에
dd
명령을 사용하여 좀 더 좋게 만들 수 있습니다.일
dd
은 디스크 및 이미지 작업에 매우 유용한 도구이지만 작업할 때는 주의해야 합니다. 실수로 입력 및 출력 장치를 전환하면 데이터가 쉽게 손실될 수 있습니다.원래 이름은 "Data Definition"에서 유래했지만, 그런 이유로 "Disk Destroyer"라고도 합니다. :)
dd를 사용하도록 원래 예제를 변경해 보겠습니다.
dd if=/dev/sdc bs=128K status=progress | gzip -c >/path_to_image.gz
if
은 "입력 파일"을 의미합니다. 이것은 앞서 언급한 "모든 것이 파일이다"철학을 의미합니다. 파일이 장치 파일이거나 파일 시스템의 일반 파일인 경우 모든 것이 투명하게 동일한 방식으로 작동합니다. status=progress
은 dd에게 좋은 진행 상태를 보여주라고 지시합니다(읽기 부분의 경우). 또한 성능상의 이유로 128K의 블록 크기를 사용하고 있습니다. dd는 주로 역사적 이유로 512바이트의 기본 블록 크기를 갖지만 여기에는 또 다른 이유가 있습니다.
읽기 오류
장치에 오류가 있는 경우 다음과 같은 메시지가 표시될 수 있습니다.
dd: error reading ‘/dev/sdc’: Input/output error
여전히 그러한 장치의 이미지를 만들고 싶다면 다음과 같이 하는 것이 좋습니다.
dd if=/dev/sdc conv=noerror,sync iflag=fullblock > /path_to_image.gz
이에 대한 자세한 내용이 포함된 새 게시물을 작성할 예정이지만 지금은 주의하지 않으면 전체 블록이 엉망이 될 수 있음을 기억하십시오(더 큰 블록 크기는 많은 데이터가 될 수 있음).
기본적으로
conv=noerror,sync
은 dd에게 오류를 계속 읽고 블록에 0을 추가하도록 지시하여 데이터 오프셋이 동기화된 상태를 유지하도록 합니다.iflag=fullblock
은 튜토리얼에서 본 적이 없지만 내 경험상 읽기 오류에서 조기에 반환되는 read() 호출로 인해 더 작은 이미지로 끝나지 않는 것이 매우 중요합니다.장치에 오류가 있는 경우 이 플래그 조합이 최상의 결과를 제공합니다. 내 경험상 결과는
ddrescue
(이러한 시나리오에서 사용할 수 있는 또 다른 도구)과 매우 유사했습니다.파티션 백업
파티션 백업은 정확히 같은 방식으로 작동합니다. "/dev/sdc"를 파티션으로 바꾸십시오.
dd if=/dev/sdc1 bs=128K status=progress | gzip -c >/path_to_image.gz
이미지 복원
이미지 복원을 위해
dd
을 사용할 수 있지만 이번에는 "출력 파일"인수(of)를 사용합니다.gunzip -c /path_to_image.gz | dd of=/dev/sdc
ssh를 통해 다른 시스템에 백업
로컬 파일에 쓰는 대신 ssh를 통해 스트림을 쉽게 파이프할 수 있습니다.
dd if=/dev/sdc bs=128K status=progress | gzip | ssh myhost "dd of =/path_to_image.gz"
ssh를 통해 이미지 복원
물론 로컬 시스템에서 원격 이미지를 복원할 수도 있습니다.
ssh myhost "gunzip -c /path_to_image.gz" | dd of=/dev/sdc
또는 반대로 - 원격 시스템에서 로컬 이미지를 복원합니다.
gunzip -c /path_to_image.gz | ssh myhost "dd of=/dev/sdc"
참고: 이것은 BetterWays.dev: Linux by Example 시리즈의 위키 기사입니다. 여기에서 최신(더 나은 형식의 버전)을 찾을 수 있습니다: https://betterways.dev/linux-creating-a-compressed-image-of-a-disk. 이 유형의 게시물이 흥미롭다면 알려주세요(반응 및/또는 포함) 코멘트).
Reference
이 문제에 관하여(디스크의 압축 이미지 생성 - 예를 통한 Linux), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/betterways/creating-a-compressed-image-of-a-disk-linux-by-example-3oop텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)