Bonjour,
Je galère à sauvegarder des fichiers depuis un serveur.
La connexion ssh se fait par bastion, avec une commande du type
`ssh -F C:/d/fichier.conf user@host`
lorsque j'essaie de récupérer ensuite les fichiers avec rsync, je tape une commande du type
`rsync -e "ssh -F C:/d/fichier.conf" -az -vvv --progress user@host:/chemin/du/dossier/ /C:/d/backup/`
Mais j'ai cette erreur :
`
opening connection using: ssh -F "C:/d/fichier.conf" -l centos 10.0.2.15 rsync --server --sender -vvvlogDtprze.iLsfxC . /chemin/du/dossier/ (12 args)
Can't open user config file C:/d/fichier.conf: No such file or directory
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(226) [Receiver=3.1.3]
[Receiver] _exit_cleanup(code=12, file=io.c, line=226): about to call exit(255)`
Est-ce que quelqu'un saurait comment m'aider ? je bloque dessus depuis plusieurs heures sans comprendre mon erreur…
Bonjour, question idiote mais depuis le client où est executé la commande ssh, il y a bien un fichier qui s'ouvre depuis le répertoire "C:/d/fichier.conf" ?
Ceci fonctionne ?
ssh -F /d/fichier.conf user@host
Si oui alors peut être que cela fonctionnerait ?
rsync -e "ssh -F /d/fichier.conf" -az -vvv --progress user@host:/chemin/du/dossier/ /C:/d/backup/
Oui pardon je n'ai pas précisé, la première commande fonctionne. Je peux me connecter, le fichier existe et est reconnu. En essayant votre proposition (sans le C:/), toujours la même erreur…
Sur la partie client, vous passez par quoi pour exécuter la commande ssh ?
cmder ? powershell ? cmd ?
La partie client est en wsl ? Car si wsl il me semble qu'il faut utiliser, par défaut, /mnt/c/… à la place de C:/
Donc ça pourrait donner ceci :
rsync -e "ssh -F /mnt/c/d/fichier.conf" -az -vvv --progress user@host:/chemin/du/dossier/ /C:/d/backup/
Et sinon avec des \ ?
rsync -e "ssh -F C:\d\fichier.conf" -az -vvv --progress user@host:/chemin/du/dossier/ /C:/d/backup/
C'est un vrai répertoire nommé "d/" ? ou c'est un disque ?
Désolé pour les questions un peu bateau mais je ne connais pas votre arborescence :).
j'utilise MobaXterm pour faire mes commandes ssh !
C'est un vrai répertoire, le chemin est plus long, je l'ai raccourci pour le post ici ! mais c'est du genre /dossier/dossier/fichier.conf
J'ai essayé avec les antislaches, pas mieux !
Pas de soucis pour les questions, j'aurais posé les même
Je ne comprends absolument pas ce qui bloque… j'ai temporairement enlevé le bastion pour accéder direct au serveur, mais ça ne résout pas mon problème…
Et je ne sais pas du tout ce qu'est le wsl !
Et je ne sais pas du tout ce qu'est le wsl !
WSL Linux bash dans Windows :
https://docs.microsoft.com/fr-fr/windows/wsl/install
Le répertoire contenant le fichier de conf est constitué d'espace ou pas ? Si oui essayez avec des simples quotes autour.
Essayez éventuellement de déplacer ce fichier de conf dans un répertoire autre ? Plus simple à saisir peut être.
Ok merci !
quand je fais un `wsl --version`, j'obtiens ça :
` Copyright (c) Microsoft Corporation. Tous droits r⚌serv⚌s.
Utilisation⚌: wsl.exe [Argument]
Arguments⚌:
--install
Installez le sous-syst⚌me Windows pour les fonctionnalit⚌s Linux. Si aucune option n est sp⚌cifi⚌e,
les fonctionnalit⚌s recommand⚌es seront install⚌es en m⚌me temps que la distribution par d⚌faut.
Pour afficher la distribution par d⚌faut ainsi qu une liste des autres distributions valides,
utilisez 'wsl --list --online'.
Options⚌:
--distribution, -d [Argument]
Sp⚌cifie la distribution ⚌ t⚌l⚌charger et ⚌ installer par nom.
Arguments⚌:
Un nom de distribution valide (non sensible ⚌ la casse).
Exemples⚌:
wsl --install -d Ubuntu
wsl --install --distribution Debian
--list, -l [Options]
R⚌pertorie les options de distribution.
Options⚌:
--online, -o
Affiche une liste des distributions disponibles pour l installation avec 'wsl --install'.
--help
Afficher les informations d utilisation.
Je n'ai pas l'impression que ce soit installé !
Ce qui pourrait être cohérent avec le fait que quand je tape la commande d'authentification ssh (`ssh -F C:/d/fichier.conf user@host`), je renseigne bien le C:/ et ça fonctionne !
Le répertoire contenant le fichier de conf est constitué d'espace ou pas ?
Non, j'avais déjà bougé mon répertoire pour éviter ça, car pour la connexion ssh, cela posait déjà problème. Il n'y a plus d'espace depuis, mais ça ne marche pas mieux.
Sur mobaxterm quand vous essayez de naviguer jusqu'au répertoire en question, vous vous y prenez comment ?
cd C:/répertoire
Ça fonctionne ?
Sinon sous MOBA il me semble que c'est quelque chose du genre :
cd /drives/c/répertoire
J'essaierai donc, si cette dernière commande fonctionne :
rsync -e "ssh -F /drives/c/d/fichier.conf" -az -vvv --progress user@host:/chemin/du/dossier/ /C:/d/backup/
D'abord, Merci, Popallo, de m'aider !! ![]()
la commande
` cd C:/dossier/dossier`
fonctionne oui ! Et la commande
`cd /drives/c/répertoire`
fonctionne aussi !
Alors j'ai essayé, et non, toujours pas :
Can't open user config file /drives/c/dossier/fichier.conf: No such file or directory
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(226) [Receiver=3.1.3]
[Receiver] _exit_cleanup(code=12, file=io.c, line=226): about to call exit(255)
Perso je sèche, je viens d'utiliser une VM sous windows, d'installer mobaxterm et d'utiliser la commande rsync en passant le paramètre comme dans votre exemple et si je nomme mal le fichier .conf j'ai un message similaire à celui reporté mais si le fichier .conf est bien nommé, accessible au répertoire indiqué, alors cela fonctionne.
Peut-être que le message d'erreur n'est pas la vraie cause ? le fichier .conf en question pose peut être un problème droit ?
Je réfléchis et si j'ai une piste je ne manquerai pas de venir la donner ici.
J'ai testé autre chose sous moba, je me suis rendu à la racine du répertoire contenant le .conf :
cd /drives/c/repertoire/fichier.conf
J'ai fais un :
ls
Le fichier "fichier.conf" apparait bien.
Puis j'ai lancé :
rsync -e "ssh -F fichier.conf" […]
Et ça ne me fait pas d'erreur à ce moment là. Et vous ?
Et ben, on avance !!!
Je n'ai plus l'erreur de fichier inexistant, moi non plus !!
Par contre j'en ai d'autres :
stty: standard input: Inappropriate ioctl for device
sending incremental file list
stty: standard input: Inappropriate ioctl for device
rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32)
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at /home/lapo/package/rsync-3.0.9-1/src/rsync-3.0.9/io.c(605) [sender=3.0.9]
Essayez en rajoutant le paramètre
—no-inc-recursive
Vous allez y arrivez à force ![]()