DD에 대한 완전하고 상세한 가이드 (예제 포함)

나는 당신에게 단순히 훌륭한 기사를 남깁니다. 나는 나를 찾았다 인터넷을 서핑하면 여러 예제와 함께 그것이 무엇이며 명령으로 무엇을 얻을 수 있는지 자세히 보여줍니다. DD.

나는 당신에게 기사:

1. 왜 dd입니까?:

우리는 선택했다 dd 여러분이 보게 될 많은 옵션이있는 유용한 도구이기 때문입니다. 이것은 거의 Linux 세계의 스위스 군용 칼 중 하나입니다. 예,이 용어 (Swiss Army knife)는 Linux 지향 기사 작성자가 사용하는 것보다 더 많이 사용하므로 우리가 직접 사용할 기회를 놓칠 수 없습니다.

2. 일반적인 사용:

시작하기 전에 사용 방법에 대한 일반적인 아이디어를 제공하고 싶었습니다. dd. 우선 이름은 데이터 복제기에서 유래했지만 유머러스하게도 매우 강력한 도구이기 때문에 디스크 파괴자 또는 데이터 파괴자를 의미한다고도합니다. 따라서 부주의 한 순간에 귀중한 데이터가 손실 될 수 있으므로 dd를 사용할 때 각별히주의하는 것이 좋습니다. 명령의 일반 구문 dd 입니다 :

# dd if = $ input_data of = $ output_data [옵션]

입력 데이터 y 출력 _ 데이터 디스크, 파티션, 파일, 장치가 될 수 있습니까? 주로 쓰거나 읽을 수있는 모든 것. 보시다시피 네트워크 컨텍스트에서 dd를 사용하여 LAN을 통해 데이터 스트림을 보낼 수 있습니다. dd 명령의 입력 부분 또는 출력 명령 만 가질 수 있으며 경우에 따라 둘 다 제거 할 수도 있습니다. 이 모든 것은 다음 목록에서 처리됩니다.

3. 예 :

dd if = / dev / urandom of = / dev / sda bs = 4k -»임의 데이터로 디스크 채우기

dd if = / dev / sda of = / dev / sdb bs = 4096-» 디스크 간 미러링

dd if = / dev / zero of = / dev / sda bs = 4k-» 하드 드라이브 청소 (반복해야 할 수 있음)

dd if = inputfile of = / dev / st0 bs = 32k conv = sync-» 파일에서 테이프 장치로 복사

dd if = / dev / st0 of = outfile bs = 32k conv = sync-» 전자, 반전

dd if = / dev / sda | hexdump -C | grep [^ 00]-» 디스크가 실제로 제로화되었는지 확인

dd if = / dev / urandom of = / home / $ user / hugefile bs = 4096-» 파티션 채우기 (시스템 파티션에주의하십시오!)

dd if = / dev / urandom of = myfile bs = 6703104 count = 1-» 파일 인코딩 (삭제 전)

dd if = / dev / sda3 of = / dev / sdb3 bs = 4096 conv = notrunc, noerror-» 파티션을 다른 파티션으로 복사

dd if = / proc / filesystems | hexdump -C | 적게-» 사용 가능한 파일 시스템보기

dd if = / proc / partitions | hexdump -C | 적게-» 사용 가능한 파티션 (KB)보기

dd if = / dev / sdb2 ibs = 4096 | gzip> partition.image.gz conv = noerror-» 두 번째 디스크의 두 번째 파티션에 대한 gzip 이미지를 만듭니다.

dd bs = 10240 cbs = 80 conv = ascii, if = / dev / st0 of = ascii.out-»차단 해제 테이프의 내용을 파일로 복사하여 EBCDIC에서 ASCII로 변환합니다.

dd if = / dev / st0 ibs = 1024 obs = 2048 of = / dev / st1-» 1KB 블록 장치를 2KB 블록 장치로 복사

dd if = / dev / zero of = / dev / null bs = 100M count = 100
100 + 0 개의 레코드
100 + 0 기록
10485760000 바이트 (10GB) 복사 됨,

5.62955 초, 1.9GB / 초

10GB의 XNUMX을 휴지통에 복사합니다.

dd if = / dev / zero of = / dev / sda bs = 512 count = 2
fdisk -s / dev / sda
dd if = / dev / zero of = / dev / sda seek = (number_of_sectors-20) bs = 1k

디스크에서 GPT를 지 웁니다. GPT가 처음에 데이터를 쓰는 방법
그리고 디스크 끝에서 처음부터 지운 후 섹터 수 (두 번째 명령)를 찾은 다음 마지막 20 개 섹터를 지워야합니다.

dd if = / home / $ user / bootimage.img of = / dev / sdc-» 부팅 가능한 UDB 디스크를 만듭니다 (여기에 / dev / sdc로 표시됨).

dd if = / dev / sda of = / dev / null bs = 1m-» 불량 블록을 찾는 좋은 방법입니다. 백업 및 시스템 관련

dd if = / dev / sda of = / dev / fd0 bs = 512 카운트 = 1-» 플로피 디스크에 MBR 복사

dd if = / dev / sda1 of = / dev / sdb1 bs = 4096-» 디스크 간 미러링

dd if = / dev / sr0 of = / home / $ user / mycdimage.iso \ bs = 2048 conv = nosync-» CD 이미지 만들기

mount -o 루프 /home/$user/mycdimage.iso / mnt / cdimages /-» 언급 된 이미지를 로컬에 마운트

dd if = / dev / sda of = / dev / sdb bs = 64k conv = sync-» 같은 크기의 디스크로 교체 할 때 유용합니다.

dd if = / dev / sda2 of = / home / $ user / hddimage1.img bs = 1M count = 4430
dd if = / dev / sda2 of = / home / $ user / hddimage2.img bs = 1M count = 8860
[...]

파티션의 DVD 이미지 생성 (백업에 유용)

dd if = / $ 위치 / hddimage1.img of = / dev / sda2 bs = 1M
dd if = / $ 위치 / hddimage2.img of = / dev / sda2 seek = 4430 bs = 1M
dd if = / $ 위치 / hddimage3.img of = / dev / sda2 seek = 8860 bs = 1M
[기타…]

이전 백업에서 복원

dd if = / dev / 1 카운트 = 1024 bs = 1 seek = 6 of = / dev / sdaXNUMX-» 슈퍼 블록을 파괴하세요

dd if = / dev / 1 카운트 = 4096 bs = 0 seek = 5 of = / dev / sdaXNUMX-» 슈퍼 블록을 파괴하는 또 다른 방법

dd if = / 집 / $ 사용자 / suspicious.doc | clamscan-» 파일에서 바이러스를 확인합니다 (ClamAV 필요).

dd if = / home / $ user / 바이너리 파일 | hexdump -C | 적게-» 바이너리 파일의 내용보기 (hexdump 필요)

dd if = / home / $ user / bigfile of = / dev / null
dd if = / dev / zero of = / home / $ user / bigfile bs = 1024 count = 1000000

하드 드라이브의 읽기 / 쓰기 속도 벤치 마크

dd if = / dev / sda of = / dev / sda-» 한동안 사용하지 않은 오래된 하드 드라이브에 새로운 생명을 불어 넣으십시오 (드라이브는 "마운트 해제"해야 함).

dd if = / dev / mem | 문자열 | grep '검색 할 _ 문자열'-» 메모리 내용 검사 (사람이 읽을 수 있음)

dd if = / dev / fd0 of = / home / $ user / floppy.image bs = 2x80x18b conv = notrunc-» 플로피 디스크 복사

dd if = / proc / kcore | hexdump -C | 적게 -»가상 메모리 표시

dd if = / proc / filesystems | hexdump -C | 적게-» 사용 가능한 파일 시스템보기

dd if = / proc / kallsyms | hexdump -C | 적게-» 로드 된 모듈 표시

dd if = / proc / interrupts | hexdump -C | 적게-» 인터럽트 테이블을 표시합니다.

dd if = / proc / uptime | hexdump -C | 적게-» 가동 시간을 초 단위로 표시

dd if = / proc / partitions | hexdump -C | 적게-» 사용 가능한 파티션 (KB)보기

dd if = / proc / meminfo | hexdump -C | 적게-» 메모리 상태 표시

dd if = / dev / urandom of = / home / $ user / myrandom bs = 100 count = 1-» 임의의 횡설수설의 1kb 파일 만들기

dd if = / dev / mem of = / home / $ user / mem.bin bs = 1024-» 시스템 메모리의 현재 상태 이미지를 생성합니다.

dd if = / home / $ user / myfile-» 파일을 stdout으로 인쇄

dd if = / dev / sda2 bs = 16065 | hexdump -C | grep '검색 할 _ 텍스트'-» 전체 파티션에서 문자열을 검색합니다. 보안이되어 있어도 liveCD를 부팅 할 수 있습니다.

dd if = / home / $ user / file.bin skip = 64k bs = 1 of = / home / $ user / convfile.bin-» 처음 64KB를 건너 뛰고 file.bin을 convfile.bin에 복사합니다.

dd if = / home / $ user / bootimage.img of = / dev / sdc-» 부팅 가능한 UDB 디스크를 만듭니다 (여기에 / dev / sdc로 표시됨).

dd if = / dev / mem bs = 1k skip = 768 count = 256 2> / dev / null | 문자열 -n 8-» BIOS를 읽으십시오.

dd bs = 1k if = imagefile.nrg of = imagefile.iso skip = 300k-» Nero 이미지를 표준 ISO 이미지로 변환합니다.
이는 Nero가 표준 ISO 이미지에 추가하는 300kB의 헤더뿐이기 때문에 가능합니다.

echo -n "안녕하세요 수직 세계"| dd cbs = 1 conv = 차단 해제 2> / dev / null-» 시도해보세요. 안전합니다. 🙂

dd if = / dev / sda1 | gzip -c | 분할 -b 2000m-\ /mnt/hdc1/backup.img.gz-» 분할을 사용하여 파티션의 gzip 이미지 만들기

고양이 /mnt/hdc1/backup.img.gz.* | gzip -dc | dd of = / dev / sda1-» 이전 백업 복원

dd if = / dev / zero of = myimage bs = 1024 count = 10240-» 빈 디스크 이미지 만들기

dd ibs = 10 건너 뛰기 = 1-» stdin의 처음 10 바이트 분할

dd bs = 265b conv = noerror if = / dev / st0 of = / tmp / bad.tape.image-» 불량 반점이있는 테이프 사진을 만듭니다.

dd if = / dev / sda count = 1 | hexdump -C-» MBR보기

dd if = / dev / sda | nc -l 10001 nc $ system_to_backup_IP 10001 | dd of = sysbackupsda.img-» netcat을 사용한 빠른 네트워크 백업

dd if = / dev / zero of = / dev / sdX bs = 1024000 count = 1-» 파티션의 처음 10MB 정리

dd if = / dev / zero of = tmpswap bs = 1k
개수 = 1000000
chmod 600 tmpswap
mkswap tmpswap
스왑 온 tmpswap

임시 교환 공간 만들기

dd if = / dev / sda of = / dev / null bs = 1024k 카운트 = 1024
1073741824 바이트 (1.1GB) 복사 됨,
24.1684 초, 44.4MB / 초

디스크의 순차 I / O 속도를 결정합니다.

dd if = / dev / random count = 1 2> / dev / null | od -t u1 | \ awk '{print $ 2}'| 머리 -1-» 난수 생성

dd if = / dev / mem of = myRAM bs = 1024-» RAM 메모리를 파일로 복사

dd if = / dev / sda bs = 512 카운트 = 1 | od -xa-» XNUMX 진수 및 ASCII 형식으로 MBR의 내용보기

dd if = / my / old / mbr of = / dev / sda bs = 446 count = 1-» 447-511 바이트 사이의 파티션 테이블 레코드를 변경하지 않고 MBR을 복원합니다.

dd if = / dev / sda1 | 분할 -b 700m-sda1- 이미지-» 파티션의 복사본을 만들고 최대 볼륨 크기가 700MB 인 이미지를 저장합니다.

ls -l | dd conv = ucase-» 명령의 출력을 대문자로 변환합니다.

echo "내 대문자 텍스트"| dd conv = lcase-» 텍스트를 소문자로 변환

dd if = / etc / passwd cbs = 132 conv = ebcdic of = / tmp / passwd.ebcdic-» 시스템 암호 파일을 EBCDIC 형식 고정 길이 파일로 변환합니다.

dd if = text.ascii of = text.ebcdic conv = ebcdic-» ASCII에서 EBCDIC로 변환

dd if = myfile of = myfile conv = ucase-» 파일을 대문자로 변환 (단순 SED 또는 tr 대체)

4. 결론 :

이것은 dd가 할 수있는 일의 작은 부분 일 뿐이며,이 기사가 일반 사용자에게 가장 많이 사용되는 예제를 다루도록 조작했으면합니다. 그러나 더 진행하기 전에 하드 드라이브 설명서를 읽고 LBA 제한과 같은 사항을 찾아보고 루트 터미널에서 dd를 사용할 때 각별히주의하는 것이 좋습니다. 물론 이미 백업이 있지만 약간의 추가 관리를 통해 불필요한 작업 시간을 절약 할 수 있습니다.

그리고 기사가 끝납니다.

기록을 위해이 기사에 표시된 명령을 테스트하지 않았으므로 누군가 이러한 명령을 오용 (또는 잘못)하면 컴퓨터에서 무언가를 손상시킬 수 없을 가능성이 큽니다. 당신을 돕기 위해.

나는 조금씩 명령을 테스트 할 것입니다. 흥미로운 것을 발견하면 나는 그것을 공유합니다.

안부


17 코멘트, 당신의 것을 남겨주세요

코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   루위드

    훌륭한 기사, 이것이 명령이 철저하게 분석되는 방법이므로 우리는 그것이 무엇에 관한 것인지 많은 것을 배웁니다. 언제나처럼 축하하고 감사합니다! 😉

  2.   오스카

    매우 훌륭하고 흥미로운 항목입니다. 중요하다고 생각하므로 계속해서 제출하겠습니다.
    나는 당신과 당신의 파트너가 휴가 이틀 후에 배터리가 잘 충전 된 것을 발견 할 것이라고 상상합니다, hahahaha.
    나는 블로그에 기사가 부족했다.

    1.    KZKG ^ Gaara < "Linux

      감사합니다, 신용은 내 것이 아닙니다 ... 나는 단지 번역을 넣었습니다 🙂
      그리고 하하 예, 내일 더 많은 기사가 올 것입니다 하하, 요즘 우리는 아무것도 게시하지 않고 사과합니다. 심지어 통계를 보더라도 우리가 헤헤했다.

    2.    elav <° Linux

      휴가라고? 하 하하하 ... 그랬 으면 좋겠는데 ...

  3.   올렉 시스

    좋은 기사, 플러그인을 사용하여 PDF로 내보내거나 기사를 PDF로 첨부 할 수 있는지 항상 상기시켜줍니다.

    안녕하십니까!

    1.    용기

      지나 가면서 나는 게시물에서 태그를 많이 끄는 경향이 있기 때문에 포럼을 열어야 함을 상기시킵니다.

      1.    KZKG ^ Gaara < "Linux

        우리가 제시 한 오류 또는 문제, 데이터베이스 및 기타 연결 문제는 사이트가 너무 많은 활동이나 트래픽을 생성한다는 사실 때문이며, 이것이 우리가 잠시 오프라인 상태 인 이유입니다. 사이트 외에도 포럼을 추가하면 더 많은 트래픽이 발생하고 모든 것이 악화됩니다.

        포럼의 아이디어 예, 우리는 그것을 좋아합니다, 우리는 정말로 그것을하고 싶지만 현재 우리는 불행히도 할 수 없습니다 🙁

        1.    용기

          WordPress에는 플러그인이 있으므로 볼 수없는 사이트를 사용할 필요가 없습니다.

      2.    올렉 시스

        좋아요 ... 다른 플랫폼이나 사이트를 추가하지 않은 대안은 WordPress의 bbPres (bbpress.org)입니다.

        안녕하십니까!

        1.    KZKG ^ Gaara < "Linux

          예, 우리는 그를 알고 있습니다 hehe, 우리는 실제로 FluxBB에 대해 생각하고있었습니다 🙂
          문제는 다른 DB가 아니거나 더 많은 테이블에 동일한 DB를 사용하지만 더 많은 활동 만 사용하는 것입니다.

      3.    elav <° Linux

        곧 포럼이 열립니다 😀

    2.    KZKG ^ Gaara < "Linux

      우리는 여전히 그 플러그인을 충분히 테스트하고 잘 작동한다면 넣어야합니다 🙂
      시간이 없었어 하하

  4.   무도병

    친애하는 동료 여러분, 기쁩니다.이 응용 프로그램이 너무 갇혀서 매우 유감스럽게 생각합니다. 제가 알고 싶기 때문에 더 깊이 받아들이기를 바랍니다.
    DVD 또는 * .iso 압축으로 부팅 가능한 자석을 만들 수 있다면 미리 감사드립니다. 제 포스트 스크립트에 대한 귀하의 답변을 희망합니다. 전체 Hispanic abala 네트워크에서 설명 된 Great 기사에서 더 널리 퍼진 유일한 사람이라고 생각합니다.

  5.   69 화

    네트워크를 통해 한 시스템에서 다른 시스템으로 복제하려면 어떻게해야합니까? 제 경우에는 두 개의 노트북이 모두 고정 방향으로 LAN에 연결되어 있습니다.

  6.   에릭

    정보 주셔서 감사합니다 🙂

  7.   길다 데 4

    변경된 계약 후
    http://premium.cars.purplesphere.in/?post.zoey
    엄마와 딸 무료 포르노 무료 3gp 게이 포르노 비디오 클립 부저 포르노 펭귄 vids 포르노 경로 96 포르노

  8.   아이 아시 보르

    오래된 기록에 생명을 불어 넣는 명령은 대문자로 중요합니다. 다행입니다. 이것은 할 수있는 일의 짧은 목록입니다!