Derived the bits below from [WayBack] How to Copy files between ESXi hosts using SCP Command.
Recursive copy from a remote machine to an existing local directory:
scp -rp root@192.168.71.97://vmfs/volumes/EVO860_500GB/VM1/ /vmfs/volumes/EVO860_250GB/VM2/
After this you need to edit the .vmxf
files in the VM2
directory to ensure these are not duplicates.
One thing to remember is that you need the current host to allow the SSH client in the firewall, which is disabled by default:
After enabling:
Be really careful with the -3
option to scp; it allows you to transfer from one remote machine to another remote machine, but when using keyboard-interactive, you have a high change to lock-out your accounts: SSH will try to keyboard-interactive to both hosts at the same time.
If you lock-out root, then you have to go through the local DCUI console (use ALT-F2 to go there), then reset the root account failure count using pam_tally2 --user root --reset
.
So this can be bad:
scp -3 -rp root@192.168.71.97://vmfs/volumes/EVO860_500GB/VM1/ root@192.168.71.91://vmfs/volumes/EVO860_250GB/VM2/
This works, but assumes the SSH client is enabled from the first host:
scp -rp root@192.168.71.97://vmfs/volumes/EVO860_500GB/VM1/ root@192.168.71.91://vmfs/volumes/EVO860_250GB/VM2/
See these links:
- On
scp -3
:
- On root lockout:
- On enabling and accessing DCUI:
- Enabling/disabling SSH server and client in the firewall:
[root@ESXi-X9SRI-F:~] esxcli network firewall get
Default Action: DROP
Enabled: true
Loaded: true
[root@ESXi-X9SRI-F:~] esxcli network firewall ruleset list --ruleset-id sshClient
Name Enabled
--------- -------
sshClient false
[root@ESXi-X9SRI-F:~] esxcli network firewall ruleset set --ruleset-id sshClient --enabled true
[root@ESXi-X9SRI-F:~] esxcli network firewall ruleset list --ruleset-id sshClient
Name Enabled
--------- -------
sshClient true
[root@ESXi-X9SRI-F:~] esxcli network firewall ruleset set --ruleset-id sshClient --enabled false
[root@ESXi-X9SRI-F:~] esxcli network firewall ruleset list --ruleset-id sshClient
Name Enabled
--------- -------
sshClient false
–jeroen