Linuxpia/Linux 명령어

[리눅스 명령어] 블럭 장치 읽고 쓰는 명령어, dd

Linuxpia4U 2023. 8. 15. 04:38
반응형

블럭 장치 읽고 쓰는 명령어, dd

`dd`는 리눅스와 유닉스 환경에서 데이터를 변환하고 복사하는 데 사용되는 명령어입니다. 주로 디스크 또는 파일의 날짜를 복사, 변환하거나 백업 및 복원 작업에 사용됩니다. `dd`는 "data duplicator"의 줄임말이며, 블록 단위로 데이터를 처리합니다.

기본 구문


`dd`의 기본 구문은 다음과 같습니다:

dd if=source of=target [options]



여기서:
- `if`: 입력 파일 (source)
- `of`: 출력 파일 (target)

주요 옵션


- `bs=BYTES`: 입력 및 출력을 위해 한 번에 읽고 쓸 바이트의 크기를 설정합니다.
- `count=NUM`: 복사할 블록의 수를 지정합니다.
- `skip=NUM`: 입력 파일에서 건너뛸 블록의 수를 지정합니다.
- `seek=NUM`: 출력 파일에서 건너뛸 블록의 수를 지정합니다.
- `conv=CONVS`: 데이터 변환 옵션을 지정합니다. 예를 들어 `noerror` (입력 오류를 무시), `sync` (입력 블록을 출력 블록 크기로 동기화) 등이 있습니다.

사용 사례



1. 디스크 이미지 생성
   물리적 디스크 `/dev/sdb`의 이미지를 `backup.img` 파일로 백업:

dd if=/dev/sdb of=backup.img bs=4M



2. ISO 파일을 USB 드라이브에 기록
   `linux.iso` 파일을 USB 드라이브 `/dev/sdb`에 기록:

dd if=linux.iso of=/dev/sdb bs=4M



3. 랜덤 데이터로 디스크 지우기
   `/dev/sdb` 디스크에 랜덤 데이터를 기록하여 데이터를 완전히 지움:

dd if=/dev/urandom of=/dev/sdb bs=4M



4. 텍스트 파일의 일부분 추출
   `file.txt`의 처음 10 바이트만 `output.txt`로 복사:

dd if=file.txt of=output.txt bs=1 count=10

 

정리


`dd` 명령어는 강력하지만 주의해서 사용해야 합니다. 특히 디스크 또는 파티션에 쓰기 작업을 수행할 때 실수로 중요한 데이터를 손상시킬 수 있으므로 항상 주의가 필요합니다.

반응형