Réponses:
Utilisez scp
-command, il s'exécute au-dessus de SSH. Exemple:
scp username@remote.host:/path/to/file localfile
Cela fonctionne également dans un autre sens
scp localfile username@host:/path/remotefile
Le nom d'utilisateur, le chemin et le nom de fichier peuvent être omis (mais pas le :
!).
Comme Iain l'a dit, SFTP fonctionne également, mais j'ai tendance à privilégier scp
son cp
utilisation similaire.
-p
option lors de la copie de fichiers ou de dossiers avec scp
. Il copie également les attributs du fichier (horodatages et drapeaux). Je trouve que je veux -p
plus souvent que je ne le veux pas!
-3
indicateur: scp -3 jeff@firsthost.com:/files/file1.zip brad@secondhost.com:/archives
ceci est utile si vous devez utiliser une clé privée pour accéder aux deux serveurs uniquement sur localhost: scp -3i /local/path/to/.ssh/private_key dan@host1:/path/to/file.txt miri@host2:/path/to/upload/dir/
la barre de progression est désactivée pour -3
Vous pouvez également l'utiliser rsync
pour cela. Il peut fonctionner sur SSH.
rsync -avvP
est mon préféré pour les fichiers et / ou dossiers, mais il y a un inconvénient: il doit être installé sur la machine distante.
-e ssh
pour dire à rsync de se connecter via ssh.
Si vous ne pouvez pas utiliser scp
ou SFTP, vous pouvez utiliser tar
via SSH:
tar cf - . | ssh otherhost "cd /mydir; tar xvf -"
Celui-ci est également bon si vous avez des fichiers clairsemés qui sinon "exploseront".
scp username@remote1:/path/to/file username@remote2:/path/to/file