Envie o dd
process a USR1
signal:
$ dd if=/dev/urandom of=/dev/null &
[1] 977
$
$ kill -USR1 977
274647+0 records in
274646+0 records out
140618752 bytes (141 MB) copied, 17.3286 s, 8.1 MB/s
$
Estou rodando no servidor A (Source):
dd bs=16M if=/dev/sda|bzip2 -c|nc serverB.example.net 19000
No servidor B (Destino):
nc -l -p 19000|bzip2 -d|dd bs=16M of=/dev/sdb
Preciso ver algum progresso em algum lugar? (A / dev / sda do servidor é 50GB)
Estou esperando há 20 minutos, mas os dois ainda estão em execução. Como posso saber se realmente está transferindo dados / etc?
¿você já experimentou pv? link
dd bs=16M if=/dev/sda|bzip2 -c| pv | nc serverB.example.net 19000
nc -l -p 19000| pv | bzip2 -d| dd bs=16M of=/dev/sdb
boa sorte!
Verifique a página man do dd no seu sistema operacional, mas deve suportar um sinal USR1 que lhe dará uma verificação de progresso. Se você conhece o pid de seu processo, apenas envie um "kill -USR1 $ pid" e ele mostrará o quão longe ele está.
Encontre o PID do processo que você deseja verificar o I / O para no seu caso o dd
no servidor b seria um bom lugar para procurar então
cat /proc/<PID>/io
veja o valor para wchar
, que deve ser o valor escrito dos bytes.
Para referência futura, você pode inserir pv em um (ou ambos) de os pipes e ele informará quantos dados foram transmitidos.
dd bs=16M if=/dev/sda|bzip2 -c|pv|nc serverB.example.net 19000
225MB 0:04:48 [ 799kB/s] [ <=> ]
Você pode usar iftop
para ver o tráfego da rede ou iotop
para ver o uso do IO.
watch -d -n 1 ifconfig
no servidor B. Ele realçará todo o tráfego recebido (pacotes / bytes RX). Não conte com a precisão dos valores se você estiver usando uma distribuição de 32 bits (você ainda pode ver se ainda está funcionando).
As versões mais recentes de dd
no GNU-Coreutils (> 8.24) agora incluem um argumento status
, para evitar todos os pv
e USR1
sinal de hacks:
dd if=/dev/urandom of=/dev/null status=progress
Se estiver em um Mac:
brew install coreutils
# All commands have been installed with the prefix 'g'
gdd if=/dev/urandom of=/dev/null status=progress