Transférer des fichiers à laide de scp: permission refusée

Jessaie de transférer des fichiers depuis un ordinateur distant en utilisant ssh vers mon ordinateur:

scp My_file.txt user_id@server:/Home

Cela devrait mettre My_file.txt dans le dossier de base de mon propre ordinateur, non? Jobtiens

scp / Home: permission refusée

Aussi lorsque jessaye: ...@server:/Desktop, afin de copier les fichiers de lordinateur distant sur mon bureau.

Quest-ce que je fais de mal?

Commentaires

  • Si vous souhaitez copier le fichier dans le dossier daccueil de ‘ user_id ‘ use scp My_file.txt user_id@server: Il copie dans le dossier daccueil de lutilisateur.

Réponse

Vos commandes tentent de placer le nouveau document à la racine (/) de votre machine. Ce que vous voulez faire est de les transférer dans votre répertoire home (puisque vous n’avez pas d’autorisation d’écrire dans /). Si le chemin daccès à votre domicile ressemble à /home/erez, essayez ce qui suit:

scp My_file.txt user_id@server:/home/erez/ 

Vous pouvez remplacer le chemin par votre répertoire daccueil avec le raccourci ~/, donc ce qui suit aura le même effet:

scp My_file.txt user_id@server:~/ 

Vous pouvez même quitter sur le chemin tout à fait du côté éloigné; cela signifie votre répertoire personnel.

scp My_file.txt user_id@server: 

Autrement dit, pour copier le fichier sur votre bureau, vous voudrez peut-être le transférer vers /home/erez/Desktop/:

scp My_file.txt user_id@server:/home/erez/Desktop/ 

ou en utilisant le raccourci:

scp My_file.txt user_id@server:~/Desktop/ 

ou en utilisant un chemin relatif du côté distant, qui est interprété par rapport à votre répertoire de base:

scp My_file.txt user_id@server:Desktop/ 

Modifier:

Comme @ ckhan déjà mentionné, il faut aussi permuter les arguments, ça doit être

scp FROM TO 

Donc si vous voulez copier le fichier My_file.txt depuis le serveur user_id@server vers votre bureau, vous devriez essayer ce qui suit:

scp user_id@server:/path/to/My_file.txt ~/Desktop/ 

Si le le fichier My_file.txt se trouve dans votre répertoire personnel sur le serveur, vous pouvez à nouveau utiliser le raccourci:

scp user_id@server:~/My_file.txt ~/Desktop/ 

Commentaires

  • – Jai ‘ essayé:  » ~ / pour ‘ Accueil ‘ maintenant, ainsi que  » ~ / Bureau /. Les deux ont donné: Mon_fichier.txt 100% 0 0,0 Ko / s 00:00, et je ne peux pas voir les fichiers dans mes dossiers. Quest-ce que je fais encore mal? Merci beaucoup!
  • Sur votre deuxième exemple de commande, le ~ doit être protégé de lévaluation pour être évalué sur lhôte distant: \~ par exemple.
  • Afin de vous remercier, je me suis inscrit sur le site. Merci davoir sauvé ma journée 🙂

Réponse

Je suis venu ici pour « Transférer des fichiers à laide de scp: permission refusée « parce que jai eu la même erreur.

Dans mon cas, le fichier téléchargé avec scp aurait écrasé un fichier appartenant à root, et je nétais pas root. Bref, vérifiez la propriété du fichier étant écrasé.

Commentaires

  • Dans ce cas, il ‘ car il ‘ essaie décrire dans /Home et nest pas root, il na ‘ pas laccès en écriture en dehors de ~/
  • Aidez-moi.

Réponse

Ce qui a corrigé la « permission refusée » pour moi était, sur le serveur distant, de changer la propriété du dossier en root: (Cela peut arriver lorsque vous envoyez un fichier à un utilisateur non root, et que le répertoire appartient à root! ) Sur la machine distante (destination de copie):

sudo chown (your username) (remote folder) 

Pour être sûr également, activez toutes les autorisations sur le dossier distant: (pas toujours nécessaire):

sudo chmod 777 (remote folder) 

Réponse

cela semble être un problème dautorisation

Le fichier peut ne pas avoir les autorisations de lecture car il est livré au serveur de destination en tant que compte source.

vous devez vous assurer que le fichier à la source a les autorisations requises, en particulier lautorisation de lecture

-rw-r – r–

chmod 744

puis scp le fichier vers la destination. Ce problème sera résolu

Commentaires

  • -rw-r--r-- vaut 644 et non 744. Définition de lautorisation exécutable sur un un fichier qui nest pas réellement exécutable peut causer des problèmes.

Réponse

Vous avez les arguments pour scp inversé.Cest dabord la source, puis la destination, comme cp. man scp pour plus de détails.

Réponse

Comme la souligné Jinzai, le dossier distant peut appartenir à la racine. Dans mon cas, quelquun (ou quelque chose) a changé le propriétaire du dossier personnel de lutilisateur enraciner. Ainsi, lorsque jai essayé denvoyer un fichier à un serveur distant, une erreur dautorisation refusée sest produite.

Vous pouvez vérifier le propriétaire du dossier avec la commande ls -l :

drwxr-xr-x 5 root root 4096 Oct 21 08:16 user2

Dans lexemple ci-dessus, le dossier user2 appartient à root. Vous pouvez changer le propriétaire comme ceci:

chown user2:user2 user2

Il existe également un moyen plus rapide de vérifier si le serveur bloque un fichier en scp ou pas. Essayez de créer un fichier dans le dossier cible, par exemple avec touch test_file. Si vous ne parvenez pas à créer un fichier dans le dossier, vous ne pourrez pas envoyer le fichier ici à distance par le même utilisateur.

Réponse

Permisssion Denied signifie que vous nêtes pas la racine du serveur. Vous avez juste un compte là-bas. Donc, dans ce cas, vous devez faire ceci:

sudo scp -r /path2yourFolder/ username@server_Ip:/home/username 

Ceci sera copié dans votre répertoire personnel sur le serveur.

Cela fonctionnera également :

scp -r /path2yourFolder/ username@server_Ip:~/ 

Réponse

AMI Amazon Linux

Assurez-vous que vous devez définir le chemin daccès absolu au serveur, depuis home dans le cas actuel:

scp file.txt SSH-ALIAS:/home/YOUR_USER/ 

Réponse

Installez un outil Windows » mRemoteG « depuis www.mremoteng.org/

Créez votre connexion SSH dans la boîte souhaitée.

Cliquez sur le menu « Transférer un fichier ».

Cela permettra de transférer facilement des fichiers de Windows vers Linux.

merci.

Réponse

Les mêmes autorisations sappliquent des deux côtés du scp. Vous obtiendrez cette erreur si lutilisateur na pas lautorisation décrire dans la destination. Les symptômes semblent impliquer la source, mais dans mon cas, la destination a été créée par root et ne disposait pas de lautorisation décriture pour le compte dutilisateur prévu.

Réponse

Dans mon cas, jai également essayé daccorder toutes les autorisations avec -R au dossier, mais jai quand même obtenu lerreur dautorisation.

Jai dû supprimer « / » avant le chemin du serveur cible et du dossier. La raison en est que Downloads est le premier dossier que je peux lister après avoir ssh sur le serveur, par exemple: ssh [email protected]

Cela fonctionne:

sudo scp -rp /Users/macintosh.vn/Downloads/bbhs_20190301.zip [email protected]: Téléchargements

Cela ne fonctionnait pas:

sudo scp -rp /Users/macintosh.vn/Downloads /bbhs_20190301.zip [email protected]: / Téléchargements

Réponse

Solution facile. Assurez-vous que VOUS êtes root. SCP à la télécommande et il vous demandera le mot de passe root de cette machine. Juste eu ce problème qui était la solution. Vous les rootez.

Commentaires

  • Puisque les connexions root sont normalement désactivées dans sshd_config , vous devez montrer à lOP comment pour changer cela (bien que ‘ ne soit pas recommandé).
  • Pourquoi insistez-vous pour utiliser root pour copier un (nimporte quel) fichier? Notez également la réponse acceptée dil y a environ 7 ans …

Réponse

avant dutiliser la commande scp, faites assurez-vous daccorder des autorisations de lecture, décriture et dexécution à tout le monde à lextérieur. « chmod 777 file_name »

Commentaires

  • vous pouvez copier des fichiers qui ne sont pas 777

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *