Aide pour un script bash à déployer sur plusieurs serveurs

Résolu
laura92110 -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je souhaite déployer sur tous mes serveurs, un script qui change le hostname de mes serveurs, je ne vois pas comment faire, sachant que j'ai une liste d'ip et que chaque ip correspond à un serveur et aura donc un nom différent. Merci de votre aide.

A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

Et est-ce que chaque IP dans ta liste est associée à un nom ?
0
laura92110
 
oui tout à fait à côté de chaque ip, j'ai le nom du serveur
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Alors à partir de là avec une petite boucle

while read IP NOM; do TRAITEMENT ;done < fichier_liste
devrait faire l'affaire, non ?
0
laura92110
 
en fait, je débute dans le scripting mais j'ai un fichier texte qui contient sur chaque ligne une ip + un nom de machine. J'ai crée un script expect pour qu'il puisse se connecter sur chaque serveur et executer les commandes pour changer de nom. Pensez-vous que tout est correcte dans ma démarche. Merci
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Normalement oui. L'idéal étant quand même une connexion via des clés SSH plutôt qu'un script "expect" avec des mots de passe en clair ;-\
0
laura92110
 
je bloque sur un point, je veux que dans mon script, il change le nom de la machine, je suis donc obligé de mettre une variable pour ne pas tapé à chaque fois le nom de la machine. je suis un peu perdu là :(
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
, je suis donc obligé de mettre une variable pour ne pas tapé à chaque fois le nom de la machine.
Ben normalement le nom devrait être récupéré dans la liste en même temps que l'IP et affecté à une variable, non ?
0