[shell] ssh : Name or service not known

Résolu/Fermé
ParMesSoins - 20 mai 2008 à 18:07
 kirat - 6 mars 2012 à 12:45
Bonjour,
je lance un script qui me remonte l'espace dispo sur mes machines
do_it()
{
 cat $host_file | grep -v "#" | while read -r host
 do
  echo "Execution sur $host..."
	  cat $commands_file | grep -v "#" |  while read -r command_str
	  do
#	   command_str="${line}"
	   echo "$command_str ..."
	   ssh root@$host df -h >>/monrep/quota_serveurs/$host & 
		wait $!
	   echo "Execute $command_str OK."
	   echo""
	  done

  echo "host=$host ok."
  echo "------------------------------------------------------------------"
 done
}

ce script accede à 2 fichiers qui contiennent :
- la liste IP des machines
- les commandes à éxecuter

mais voici le msg d'erreur dans la console :
...cution sur 172.xxx.xxx.3
df -h >>/monrep/quota_serveurs/$host ...
ssh: 172.xxx.xxx.3\015: Name or service not known


Que veut dire ce msg "\015: Name or service not known" ???

A savoir que si j'execute la commande directement dans une console, ça fonctionne.
Les droits sont OK.

Merci pour votre aide !!!
A voir également:

1 réponse

mamiemando Messages postés 33446 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 20 décembre 2024 7 812
20 mai 2008 à 18:17
Cela signifie que le nom de machine passé en paramètre à ssh (ici "172.xxx.xxx.3\015") n'est pas résolu (par le DNS ou par /etc/hosts) ce qui paraît assez logique. A priori cela signifie que dans ton fichier $host_file il y a une ligne contenant :
172.xxx.xxx.3\015

... alors qu'il faudrait que ce soit un nom de machine ou une adresse IP. A noter qu'en plus le retour chariot doit être un retour chariot windows (d'où le \015). Pour convertir les retours à la ligne il suffit d'appliquer la commande dos2unix à ce fichier (idem pour le fichier de commande dans le doute).

Bonne chance
1
ParMesSoins
20 mai 2008 à 19:11
Bien vu mamiemando !
j'avais verifié dans mon SH via vi (supprimer les ^M)
mais j'ai pas pensé au host

je regarde demain, Merci !
0
moi le probleme fut que mon fichier venait de windows et je l'ai mis sur linux ...
avec dos2unix mon script est passé :oD
0