Aller au contenu

Rsync + Ssh : Erreur Name Or Service Not Known

Featured Replies

Posté(e)

Bonjour à tous,

De retour de vacances, je continue toujours mes tests en vue d'une sauvegarde par script rsync entre 2 syno distants (voir discussion)

J'ai installé sur le syno distant openssh et changer le port

Lorsque je teste la commande

ssh -p 1522 -l root "adresse du syno"
tout fonctionne => J'en déduis que la config ssh est correcte entre les 2 synos Etape suivante, création d'un script rsync du type
rsync -e 'ssh -p 1522 -l root'  --delete  --backup --backup-dir=$BACKUP/$JOUR -arv $SOURCE/ $serveur:$DEST  >> $LOG/$NOMLOG

   

en retour j'ai l'erreur suivante :

ssh: : Name or service not known

Des idées ?

D'avance merci pour vos retours

Pilou38

Posté(e)

bonjour

la référence de votre lien ne fonctionne pas

je crois bien qu'il faudrait que vous lisiez ce lien pour apprendre un peu cette commande magique, car la syntaxe n'est pas bonne

ce lien est le manuel de rsync en français, il y a pleins d'exemple , des plus classiques , aux plus complexes

http://www.delafond....n1/rsync.1.html

voir l'option

-e, --rsh=COMMANDE

ce sont des guillemets

"ssh -p 1522 -l root"

en lisant ce manuel, vous comprendrez très vite, les options possibles, et faite votre tests, sur un répertoire ajouté, et des petits fichiers sans risques pour commencer

@+

Posté(e)
  • Auteur

exact, je me suis inspiré de ce lien.

entre temps, j'avais corrigé cette erreur de typo, mais j'ai maintenant une erreur

ash: rsync: not found

en fait, j'ai l'impression que cette commande n'est valide que lorsque qu'un serveur rsync distant fonctionne. Ce qui n'est pas mon cas.

J'ai essayé la commande suivante :

 rsync  /volume1/test/ 'adresse syno':/volume1/test

 

dans ce cas la, il y a une erreur car mon port n'est plus le port std. Je n'ai pas trouvé la fonction pour changer le numero de port pour ssh car l'option -p semble une nouvelle fois correspondre au cas d'un serveur rsync distant.

Pilou38

Posté(e)

ok

tu confonds avec le demon xinetd, sur le syno ssh est lancé en service normal ;)

pour te simplifier grandement la vie , une solution parmi d'autres que j'utilise tous les jours

BUT: modifier le service SSH, pour changer le port standard

je parle bien de service, pas de sshd_config, du coup SSH démarre par exemple sur le port 1522, pour le système lui même, rien n'est changé.

la manip est à faire obligatoirement sur les deux synos, on édite le fichier /etc/services pour modifier le port standard

avertissement: il faut s'assurer qu'il n'y aura pas conflit, donc, on verifie la config sshd_config

toujours sauvegarder les fichiers avant modif !!!!

1)

que dans le fichier

/etc/ssh/sshd_config

ou si openssh

/opt/etc/openssh/sshd_config

si présente la ligne port doit etre commentée avec un #

#port 22

ou

#port 1522

2)

sous ssh

édition de /etc/services

repérer les deux lignes ssh, remplacer 22 par 1522

ssh______ 1522/tcp___________ # SSH Remote Login Protocol

ssh______ 1522/udp___________ # SSH Remote Login Protocol

3)

il faut prévoir sur des firewall éventuels ce trafic, en changeant également le numero de port SSH lié au services, ou laisser passer 1522 et 22 tcp

si le firewall sur le syno est actif, il faut prévoir le changement du réglage manuel tcp 1522, en service SSH (****)

4)

reboot des synos pour que les modifications sur le service SSH soient bien pris en comptes, ou relances le service SSH

test de connexion ssh, via putty ou autre client ssh , connexion au port 1522 tcp

5)

(*****)

ne pas oublier que lorsque il y a aura update du firmware ces modifs peuvent sauter, et seront à refaire.

donc précaution, dès le départ si le firewall du syno est activé, bien régler sur service SSH, et pas port manuel 1522, même si le service repasse de 1522 à 22, l'accès à distance reste autorisé.

les taches cron, pour rsync ne seront pas à remodifier

comme cela tu pourras utiliser par la suite une syntaxe normale ssh sur les deux synos pour rsync

@+

Posté(e)
  • Auteur

Merci pour toutes ces infos.

Par contre finalement, la commande

-e 'ssh -p 1522 -l root' 
marche. L'erreur
ash: rsync: not found
semble venir du fait que sur la machine distante, le chemin de rsync n'est pas connu. Pour résoudre le problème j'ai utilisé l'option
--rsync-path=/usr/syno/bin/rsync
et ca marche :rolleyes: En résumé voila ma ligne de commande complète pour une connexion root sur un port 1522 :
rsync -e 'ssh -p 1522 -l root' /volume1/test 'adresse syno':/volume1/test -av --rsync-path=/usr/syno/bin/rsync

Pilou38

Posté(e)

Merci pour toutes ces infos.

Par contre finalement, la commande

-e 'ssh -p 1522 -l root' 
marche. L'erreur semble venir du fait que sur la machine distante, le chemin de rsync n'est pas connu. Pour résoudre le problème j'ai utilisé l'option
--rsync-path=/usr/syno/bin/rsync
et ca marche :rolleyes: En résumé voila ma ligne de commande complète pour une connexion root sur un port 1522 :
rsync -e 'ssh -p 1522 -l root' /volume1/test 'adresse syno':/volume1/test -av --rsync-path=/usr/syno/bin/rsync

Pilou38

donne un peu le résultat de

echo $PATH sur ton syno ?

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.