scp with -C flag does not perform compression
ssh -C
is compression for data in motion on the wire, not data at rest. In other words, ssh compressed and decompressed in the transport layer.
With ssh and pipes, its possible to compress on the remote host, get that compressed stream as standard in, and write it out on the local host. Which compresses data in motion and at rest.
ssh root@remote-host "zstd /path/to/file/core_dump --stdout" > core_dump.zst
Quotes are significant, indicating the remote command. Replace zstd
with gzip
or xz
for your desired compression format.
Also possible to pipe tar archives through ssh, not necessary here with a single file.