Dicas menores
Se você está logado no machineA como root, então eu não acho que seja necessário dizer o root@machineA:/...
bit, você pode dizer isso um pouco menos como:
$ scp david@machineB:/bat/data/snapshot/5.data /data01/primary
Eu sempre digo diretórios de destino como este também, só assim é mais óbvio o que vai acontecer:
$ scp david@machineB:/bat/data/snapshot/5.data /data01/primary/.
Seu problema
Mas não acho que essa seja a causa raiz da sua mensagem de erro:
Host key verification failed.
Em vez disso, essa mensagem geralmente significa que você tem uma chave de host inválida e / ou fora de sincronia no arquivo /etc/.ssh/known_hosts
.
Você pode confirmar com este comando:
$ ssh-keygen -R <hostname>
Exemplo
$ ssh-keygen -R skinner
# Host skinner found: line 1 type RSA
# Host skinner found: line 125 type RSA
/home/saml/.ssh/known_hosts updated.
Original contents retained as /home/saml/.ssh/known_hosts.old
Ignorando a verificação do host
Se você sabe o que está fazendo e não se importa com a verificação do host, é possível desativá-lo temporariamente assim:
$ scp -o StrictHostKeyChecking=no \
david@machineB:/bat/data/snapshot/5.data /data01/primary/.