J'ai examiné ce sujet: Comment corriger aucun message d'erreur de fichier ou de répertoire lors de l'utilisation de la commande sftp et quelques autres, mais rien ne m'a aidé à résoudre ce problème.
En termes simples, j'essaie de déplacer un fichier nommé blankfile.txt
qui se trouve sur le répertoire de mon ordinateur de bureau sur une machine locale vers mon répertoire distant sur le serveur LAMP.
J'ai essayé:
put Desktop/blankfile.txt
put blankfile.txt 192.168.x.x:/home/user/Desktop/
put /home/user/Desktop/blankfile.txt
(en le tapant depuis le répertoire de travail distant)
Qu'est-ce que je fais mal?
Mon hypothèse est que vous n'êtes pas dans le chemin local correct. Pour savoir où se trouve votre répertoire actuel sur votre ordinateur local, utilisez: lpwd
name__.
Si vous êtes dans un chemin incorrect, utilisez lcd
pour accéder au chemin correct, par exemple:
lcd ~/Desktop
Sachez que tous vos fichiers sont en place, utilisez: lls
pour obtenir la liste de vos fichiers locaux. ou même quelque chose comme ça:
lls blankfile.txt
Pour s'assurer que c'est là. alors vous pouvez utiliser put
pour commencer à le télécharger sur la machine distante:
put blankfile.txt
Si vous rencontrez une erreur d’autorisation, utilisez la commande pwd
pour savoir où vous vous trouvez sur votre ordinateur distant.
Si vous êtes dans un chemin du type /var
et que vous avez utilisé sftp
avec un utilisateur normal, il est évident que vous ne pouvez pas télécharger vos fichiers à cet emplacement. Dans ce cas, vous obtiendrez une erreur du type:
remote open("/root/blankfile.txt"): Permission denied
Utilisez la commande cd
pour accéder à un répertoire que vous êtes autorisé à écrire, puis utilisez la commande put
name__.
L'autre problème d'autorisation qui pourrait survenir est votre autorisation de fichier local, qui produira:
Couldn't open local file "blankfile.txt" for reading: Permission denied
Vérifiez l’autorisation de votre fichier local avec lls -l blankfile.txt
, assurez-vous que votre utilisateur actuel de votre ordinateur local a le droit de lire ce fichier.