linux 명령어 dd
블록장치 읽고 쓰기.
$ dd
Linux 명령어 dd
데이터를 복제하거나 변환하는 강력한 유틸리티 명령어
1. 자세한 설명
dd
명령어는 Linux에서 데이터 복사 및 변환 작업을 수행하기 위해 사용됩니다. 이를 통해 파일, 장치, 파티션 등을 복제하거나 특정 형식으로 변환할 수 있습니다. 주로 디스크 복제, 이미지 생성, 또는 파일 데이터 변환과 같은 작업을 위해 활용됩니다.
2. 사용법
- 기본 복사
dd if=[입력 파일] of=[출력 파일]
입력 파일 데이터를 출력 파일로 복사합니다. - 디스크 복제
dd if=[소스 디스크] of=[대상 디스크]
디스크의 데이터를 그대로 복제합니다. - 특정 블록 크기 지정
dd if=[입력 파일] of=[출력 파일] bs=[블록 크기]
데이터를 지정된 블록 크기 단위로 복사합니다.
3. 자세하게 설명
dd
명령어는 아래와 같은 옵션을 지원합니다:
- if=[파일]: 입력 파일을 지정합니다.
- of=[파일]: 출력 파일을 지정합니다.
- bs=[크기]: 블록 크기를 설정합니다.
- count=[숫자]: 지정된 블록 수만큼 복사합니다.
- status=[모드]: 진행 상태를 출력합니다(
progress
옵션 지원). - conv=[옵션]: 데이터 변환 옵션을 지정합니다(예:
notrunc
,sync
등).
4. 자세한 명령어 사용법
다음은 dd
명령어의 다양한 사용 예제입니다:
# 파일 복사 $ dd if=/dev/sda of=/dev/sdb bs=64K status=progress # ISO 이미지 생성 $ dd if=/dev/cdrom of=/home/user/image.iso # 디스크 복제 $ dd if=/dev/sda of=/dev/sdb bs=1M status=progress # 부트 가능한 USB 생성 $ dd if=/path/to/image.iso of=/dev/sdc bs=4M status=progress # 특정 크기만 복사 $ dd if=/dev/sda of=/dev/sdb bs=1M count=100 # 빈 파일 생성 $ dd if=/dev/zero of=/home/user/emptyfile bs=1M count=10 # 특정 데이터 패턴 복사 $ dd if=/dev/urandom of=/home/user/randomdata bs=512 count=20 # 디스크 초기화 $ dd if=/dev/zero of=/dev/sdb bs=1M # 파티션 데이터를 복제 $ dd if=/dev/sda1 of=/dev/sdb1 # 진행 상태를 표시하며 복사 $ dd if=/dev/sda of=/dev/sdb status=progress # 파일 시스템 복구를 위해 복제 $ dd if=/dev/sda1 of=/dev/sdb1 conv=notrunc # 특정 위치의 데이터 복사 $ dd if=/home/user/file of=/home/user/newfile skip=1 seek=2 bs=1024 # 스크립트에서 디스크 백업 자동 처리 #!/bin/bash dd if=/dev/sda of=/backup/sda.img bs=4M status=progress # 데이터 변환 및 복사 $ dd if=/home/user/input.txt of=/home/user/output.txt conv=ucase # USB 디스크 검사 후 이미지 생성 $ dd if=/dev/sdb of=/home/user/usb_backup.img bs=1M status=progress # 디스크를 빈 데이터로 덮어쓰기 $ dd if=/dev/zero of=/dev/sda bs=1M status=progress # 이미지 파일 압축 후 복사 $ dd if=/dev/sda | gzip > disk_image.gz # 디스크 복제 후 복구 확인 $ dd if=/dev/sda of=/dev/sdb bs=1M && echo "복구 완료!" # 특정 디스크의 성능 테스트 $ dd if=/dev/zero of=/home/user/testfile bs=1G count=1 oflag=direct
위의 예제는 dd
명령어를 사용하여 데이터 복사 및 변환을 처리하는 다양한 방법을 보여줍니다.
No responses yet