Ver progresso do scp de outra máquina

2

Suponha que eu esteja scp ing um arquivo grande (300GB) do servidor corporativo para minha máquina de trabalho a qual NÃO tenho QUALQUER acesso durante o fim de semana (blocos de firewall ssh para máquinas dentro da rede do escritório); portanto, não posso simplesmente me conectar a ele e ver o progresso. Agora está lá de qualquer maneira para eu ver o progresso desse trabalho scp quando eu ssh no servidor com a mesma conta da minha máquina em casa? Claro que isso não é muito útil, mas eu sou curioso mesmo assim.

    
por DarthPaghius 12.11.2017 / 04:35

1 resposta

1

Você pode usar lsof para listar informações sobre os arquivos atuais abertos pelo processo scp no servidor. Encontre seu id de processo com pidof scp , por exemplo, depois use lsof -p nesse pid. Você também precisará da opção -o para mostrar o deslocamento atual dentro do arquivo que está sendo lido por scp . Por exemplo

$ pidof scp
29273

$ lsof -op 29273
COMMAND   PID USER   FD   TYPE DEVICE    OFFSET    NODE NAME
scp     29273  meuh  cwd    DIR  179,2            273367 /home/meuh
scp     29273  meuh  rtd    DIR  179,2                 2 /
scp     29273  meuh  txt    REG  179,2            260817 /usr/bin/scp
...
scp     29273  meuh    0r  FIFO   0,10       0t0 3005108 pipe
scp     29273  meuh    1w  FIFO   0,10       0t0 3005109 pipe
scp     29273  meuh    2w  FIFO   0,10       0t0 3005110 pipe
scp     29273  meuh    3r   REG  179,2 0t2834432     530 /home/meuh/x

A última linha mostra que o descritor de arquivo 3 está pronto para ler a partir do deslocamento 2834432 do arquivo /home/meuh/x . Você pode usar watch para repetir o comando e ver as alterações.

    
por 12.11.2017 / 11:03

Tags