본문 바로가기
IT 이야기

[Linux] dd명령어 활용, dump

by Dblog 2021. 9. 1.
728x90

 

dd 명령어는 하드웨어 수준, 즉 저장공간 수준에서 데이터를 읽거나 쓰는데 사용하는 명령어 입니다. 

https://ko.wikipedia.org/wiki/Dd_(%EC%9C%A0%EB%8B%89%EC%8A%A4) 

 

 

dd (유닉스) - 위키백과, 우리 모두의 백과사전

dd는 파일을 변환하고 복사하는 것이 주 목적인 유닉스 및 유닉스 계열 운영 체제용 명령 줄 유틸리티이다.[1] 유닉스에서 하드웨어와 특수 장치 파일용 장치 드라이버는 파일 시스템에서 마치

ko.wikipedia.org

 


if, of, count, bs 옵션등이 있으며

보통 파티션을 복사, 마운트 하는데 활용합니다.

명령어 설명
dd if=/dev/sr0 of=myCD.iso bs=2048 conv=noerror,sync CD-ROM으로부터 ISO 디스크 이미지를 생성한다. 일부의 경우 작성된 ISO 이미지는 CD-ROM 기록에 사용되는 것과 동일하지 않을 수도 있다.[7]
dd if=system.img of=/dev/sdc bs=4096 conv=noerror 이전에 만든 이미지로부터 하드 디스크 드라이브(또는 SD 카드)를 복원한다.
dd if=/dev/sda2 of=/dev/sdb2 bs=4096 conv=noerror 하나의 파티션을 다른 파티션으로 복제한다.
dd if=/dev/ad0 of=/dev/ad1 bs=1M conv=noerror 하드 디스크 드라이브 "ad0"을 "ad1"으로 복제한다.

(https://ko.wikipedia.org/wiki/Dd_(%EC%9C%A0%EB%8B%89%EC%8A%A4))

 

 

하드웨어를 파일처럼 읽고 쓰는것이기 때문에 명령어를 테스트해보시는걸 딱히 권해드리지 않습니다. 공부를 확실히 하고 테스트 하시기 바랍니다. 

잘못된 예시를 보여드리면 공부안하고 테스트 하시다가는 저장공간을 초기화 할수도 있습니다.

https://kldp.org/node/64857

위 명령어를 따라서 치면 sda 측 os가 설치되는 파티션이 0으로 초기화 됩니다.

 


테스트

저는 이번에 mmcblk1 부분의 파티션을 모두 읽어서 이미지로 만들고 다른 하드웨어 장비에 같은 환경을 복사하는 작업을 진행하였습니다.

dd if=/dev/mmcblk1 bs=512 count=14876672 | ssh '계정정보' 'dd of=test.img bs=512'

복사하려는 파티션들의 섹터 count가 14876672, 블럭단위가 512byte 대충 계산했을때 7.6기가 정도 나오네요 이미지 파일도 그정도 용량으로 복사됩니다.

7.6기가를 그대로 사용하기에는 너무 커서 gzip으로 압축했고 용량은 600MB로 줄었습니다. 

그리고 생성된 test.img.gz파일을 새로운 환경에서 덮어써버렸습니다. 

gunzip -c test.img.gz | dd of=/dev/mmcblk1 bs=512

 

 

 

 

 

 

 

 

728x90

'IT 이야기' 카테고리의 다른 글

mac 단축키  (0) 2022.01.27
[Linux] bash shell if,  (0) 2021.10.16
[네트워크] DNS (Domain Name System)  (0) 2021.08.05
[OPTEE-64bit] Optee_os, Optee_client, Optee_example  (0) 2021.07.16
MYSql Server8.0.17~19 'member' 예약어 이슈  (0) 2021.07.07

댓글