나는 그것을 많이 사용하지 않았지만 dd
지금까지는 나를 실망시키지 않았습니다. 이제 이 작업에 dd
12시간이 넘게 걸렸습니다. 이미지를 원래 있던 디스크에 다시 쓰는 중입니다. dd
약 7시간 만에 이 작업을 수행할 수 있었기 때문에 조금 걱정됩니다.
저는 Core 2 Duo, 2.1ghz/코어 및 4GB RAM을 갖춘 MacBook에서 OSX 10.6.6을 실행하고 있습니다. 7200rpm 하드 드라이브(부팅 드라이브)의 .dmg에서 데이터를 읽고 SATA-USB 커넥터를 통해 연결된 7200rpm 드라이브에 쓰고 있습니다. 블록 크기를 기본값으로 두었습니다. 이미지는 약 160GB입니다.
편집: 그리고 14시간 동안 순수한 스트레스를 받은 후에도 결과는 dd
여전히 완벽했습니다. 다음번에는 그것을 실행 pv
하고 추적을 사용할 것입니다 strace
. 모두의 도움에 감사드립니다.
답변1
당신은 보낼 수 있습니다dd
신호는 kill
명령을 사용하여 현재 상태를 출력합니다. 이 신호는 INFO
BSD 시스템(OSX 포함) 및 USR1
Linux에서 사용할 수 있습니다. 귀하의 경우:
kill -INFO $PID
다음 명령을 사용하여 프로세스 ID( $PID
위) 를 찾을 수 있습니다 ps
.Mac OS X의 pgrep 및 pkill 대안좀 더 편리한 방법을 위해.
더 간단히 말하면,앙투안 G에서 지적하다그의 대답ctrl-T
, 실행 중인 쉘에 신호를 입력하여 dd에 신호를 보낼 수 있습니다 INFO
.
Linux의 예를 들어 dd
다음과 같이 모든 활성 프로세스 출력 상태를 가질 수 있습니다.
pkill -USR1 -x dd
상태를 출력한 후 dd
응답이 계속됩니다.
답변2
OS X에서는 (Linux에서는 시도하지 않았습니다) Ctrl실행 중인 터미널에 +를 입력하면 됩니다. CPU 사용량과 동일한 출력을 인쇄합니다.Tdd
kill -INFO $PID
load: 1.40 cmd: dd 34536 uninterruptible 3.49u 64.58s
5020305+0 records in
5020304+0 records out
2570395648 bytes transferred in 4284.349974 secs (599950 bytes/sec)
나는 이 스레드를 읽고 내 터미널에서 새 탭을 열려고 시도했지만 ⌘+ T와 Ctrl+ 혼합되는 것을 발견했습니다 T.
답변3
답변4
coreutils
v8.24 부터 dd
진행률 표시가 기본적으로 지원됩니다. 옵션을 추가하면 됩니다 status=progress
.
예:
dd if=arch.iso of=/dev/sdb bs=4M status=progress