cp: ne peut pas stat: aucun fichier ou répertoire

10

Je reçois une erreur lorsque j'essaie de copier un fichier de mon ordinateur local vers un serveur distant avec ssh. J'obtiens la même erreur que j'utilise cpou scp.

Voici mon entrée à l'erreur résultante:

[[email protected] /]# cp /home/username/some.xml [email protected]:/path/to/directory/  
cp: cannot stat ‘/home/username/some.xml’: No such file or directory

J'ai vérifié, et il y a certainement un fichier sur le chemin /home/username/some.xmlsur ma machine locale.

L'ordinateur local et le serveur distant sont en cours d'exécution CentOS 7. Comment puis-je résoudre cette erreur et copier avec succès?

CodeMed
la source
1
Pouvez-vous coller la sortie de (en tant que root) ls -l /home/username/some.xml?
Mark Plotnick
Vous devez obtenir le chemin correct pour le nom de fichier pour commencer, si vous pouvez trouver le fichier dans le navigateur de fichiers, vous devriez pouvoir le trouver dans le terminal en parcourant les répertoires avec cd et en utilisant ls pour afficher d'autres fichiers et répertoires.
Chris Davidson
@MarkPlotnick Vos suggestions m'ont amené à résoudre le problème. Comme [email protected], j'ai tapé exit, puis tapé la scpcommande ci-dessus et cela a fonctionné. Le problème était que j'étais connecté en tant que [email protected], donc il ne voyait que la structure de répertoires de remote.web.server, qui est différente de la structure de répertoires de ma machine locale. Puisque vous m'avez fait trouver cela, je serais heureux d'accepter une réponse que vous pourriez soumettre. Je vous remercie.
CodeMed

Réponses:

6

Si vous êtes connecté à la machine locale , vous utiliseriez scpcomme ceci:

scp /home/username/some.xml [email protected]:/path/to/directory/

Si vous êtes connecté à la machine distante (comme dans l'OP), utilisez scpcomme ceci:

scp [email protected]:/home/username/some.xml /path/to/directory

Remplacez les adresses IP comme indiqué dans les commandes.

Timothy Martin
la source
Après avoir essayé différentes solutions toute la journée, celle-ci fonctionne pour moi.
Hobby Dev
2

Tout d'abord, vous devrez utiliser SCP, il n'y a aucun moyen d'utiliser simplement cp pour copier des fichiers sur le réseau.

La commande scp devrait ressembler à ce qui suit dans votre exemple, notez que la structure du répertoire devra exister du côté du serveur recevant les fichiers;

scp /home/username/some.xml [email protected]:/path/to/directory/

Si vous ne l'avez pas déjà fait, vous devrez vous connecter au serveur sur lequel vous copiez le fichier et créer le répertoire dans lequel vous souhaitez copier le fichier, c'est-à-dire;

mkdir /path/to/directory

Une alternative serait d'utiliser rsync.

Chris Davidson
la source
Cela ne fonctionne pas. Je viens de l'essayer à nouveau maintenant, en vérifiant que j'ai fait exactement ce que vous avez écrit, ce qui est la même chose que j'ai mentionnée dans mon OP ci-dessus lorsque j'ai déclaré que cela génère la même erreur que j'utilise scpou cp.
CodeMed