7. dd

dd 명령어는 데이터를 변환하고 복사하는 데 사용되는 다재다능하고 강력한 유틸리티입니다. 입력 파일 또는 데이터 스트림에서 읽어 출력 파일 또는 데이터 스트림에 쓰는 방식으로 작동하므로, 많은 시스템 관리 작업에 필수적인 dd 도구입니다.

dd 명령어 이해하기

핵심적으로 dd는 바이트 단위로 데이터를 복사합니다. 다음 명령어를 고려해 보세요.

dd if=/home/pete/backup.img of=/dev/sdb bs=1024

이 명령어는 파일 backup.img의 내용을 블록 장치 /dev/sdb로 복사합니다. 이 작업은 입력 파일 전체를 읽을 때까지 1024 바이트 블록 단위로 데이터를 복사하여 수행됩니다.

필수 dd 옵션

dd 명령어의 동작은 몇 가지 주요 옵션으로 제어됩니다.

  • if=file: 입력 파일을 지정합니다. dd는 표준 입력 대신 이 파일에서 읽습니다.
  • of=file: 출력 파일을 지정합니다. dd는 표준 출력 대신 이 파일에 씁니다.
  • bs=bytes: 블록 크기를 설정합니다. dd는 한 번에 이만큼의 바이트를 읽고 씁니다. 더 큰 단위를 위해 접미사를 사용할 수 있습니다. 예를 들어, 킬로바이트 (1024 바이트) 는 k, 메가바이트는 M, 기가바이트는 G를 사용합니다. 예: bs=1M.
  • count=number: 지정된 블록 수만큼만 복사합니다.

bs 와 count 함께 사용하기

count 옵션은 특정 양의 데이터만 복사해야 할 때 유용합니다. 복사되는 총 데이터 양은 bscount를 곱한 값이 됩니다. 예를 들어, 10M 크기의 파일에 대해 다음 명령어를 실행한다고 가정해 봅시다.

dd if=/home/pete/backup.img of=/dev/sdb bs=1M count=2

backup.img가 10M 이더라도, 이 명령어는 dd에게 크기가 1M 인 블록 2 개만 복사하도록 지시합니다. 결과적으로 2M 의 데이터만 복사되어 불완전한 전송이 발생합니다. count는 특정 시나리오에서 유용하지만, 전체 파일을 복사하는 것이 목표라면 종종 생략할 수 있습니다. bs를 최적화하면 전송 속도가 크게 향상될 수 있지만, 기본 설정으로도 충분한 경우가 많습니다.

dd 의 강력함과 위험성

dd linux 명령어는 매우 강력합니다. 전체 디스크 드라이브 백업 생성, 디스크 이미지 복원, 데이터 보안 삭제 등에 사용할 수 있습니다. 하지만 이러한 강력함에는 위험이 따릅니다. ifof 값을 바꾸는 것과 같은 작은 실수 하나가 복구 불가능한 데이터 손실을 초래할 수 있습니다. 특히 /dev/sda와 같은 장치에 쓸 때는 항상 명령어를 실행하기 전에 다시 확인하십시오.

로그인하여 학습 진행 상황을 저장하세요

로그인

연습 문제

연습이 완벽을 만듭니다! 데이터 조작 및 Linux 디스크 관리에 대한 이해를 강화하기 위한 실습 랩이 있습니다.

  1. Linux 에서 tar 를 사용하여 백업 생성 및 복원 - dd로도 수행할 수 있는 데이터 무결성 및 복구에 중요한 파일 시스템 백업 생성 및 복원 연습.
  2. Linux 파티션 및 파일 시스템 관리 - 디스크 이미징을 위해 dd와 같은 도구를 사용할 때 기본 개념인 파티션 생성, 포맷 및 마운트를 포함하여 디스크 파티션 및 파일 시스템 관리 학습.

이 랩들은 실제 시나리오에서 데이터 처리 및 디스크 작업 개념을 적용하고 시스템 관리 작업에 대한 자신감을 키우는 데 도움이 될 것입니다.

퀴즈

블록 크기를 위한 `dd` 옵션은 무엇입니까? 소문자 영어 알파벳만 사용하여 답하십시오.