J'ai jeté un coup d'œil à d'autres questions ici et à divers tutoriels "d'utilisation de scp" sur Internet, mais je n'arrive pas à déterminer ce qui ne va pas.
J'utilise Linux Mint et j'essaie de comprendre comment scp fonctionne.
J'ai un fichier file.ext (sur mon ordinateur) dans le répertoire /home/name/dir/
Je me connecte à une machine distante en utilisant ssh , comme :
ssh -p 2222 [email protected]
il me demande le mot de passe et le shell affiche :
[email protected] ~ $
maintenant, si j'émets la commande (avant d'exécuter ssh, j'étais dans le répertoire local /home/name/dir ):
scp -r -P 2222 file.ext [email protected]
la sortie est :
cp: cannot stat ‘file.ext’: No such file or directory
Même résultat si au lieu de file.ext j'écris le chemin complet
scp -r -P 2222 /home/name/dir/file.ext [email protected]
De plus, l'administrateur du serveur m'a dit que je téléchargerai le fichier dans mon répertoire personnel distant (au lieu de root), comme :
scp -r -P 2222 file.ext [email protected]:~/
mais quand je le fais et que j'appuie sur "Entrée", rien ne se passe, comme si le shell attendait une entrée supplémentaire.
Résumé de mes problèmes :
- cp :aucun fichier ou répertoire de ce type
- shell "bloqué" sur ~/
Des suggestions ?
Réponse acceptée :
Vous devez exécuter le scp
commande depuis la machine locale, pas sur la télécommande. Vous n'avez pas besoin du ssh
du tout :
[email protected] $ scp -P 2222 file.ext [email protected]:~/
Vous n'avez pas non plus besoin du -r
:
-r Recursively copy entire directories.
Si vous êtes déjà connecté à la machine distante et que vous souhaitez copier depuis votre machine locale, vous devez vous assurer que votre machine locale est accessible via Internet et dispose de ssh
d'installation. Je ne pense pas que ce soit ce que vous recherchez, mais si c'est le cas, exécutez simplement ceci à partir de la télécommande :
[email protected] $ scp [email protected]:/path/to/file.ext ~/