Bonjour, je suis novice en linux.
Pour tout vous expliquer, je suis sous Windows 7 et me connecte via Putty en SSH, sur un serveur teste (192.168.X.X) qui est sous Debian Wheezy (comme tous les autres serveurs).
Je dois créer un script shell qui doit aller chercher, en sftp, sur un serveur distant (5.X.X.X), des fichiers et qui les transfert vers plusieurs autres serveurs dont je ne connait ni le nombre, ni les IP. Pour l’instant, je les envoi vers mon 192.168.X.X. Ces fichiers sont des fichiers de mises à jour de l’OS des serveurs.
Mon script shell doit donc permettre de récupérer des fichiers en sftp et de les télécharger -> Mise à jour automatique des OS des différents serveurs.
J’ai fait mon script, la connexion en sftp fonctionne mais ensuite, il ne m’enchaîne pas les commandes (celles-ci fonctionnent puisque quand je les tape manuellement, elles fonctionnent).
Si quelqu’un pouvait m’aider et m’expliquer pourquoi il ne m’enchaîne mes commandes !
J’espère avoir été assez claire.
Merci d’avance.
PS : Je vous met mon script. L’indentation ne passe pas lors de l’affichage sur ce site.
#! /bin/sh
sftp comptage@5.X.X.X
if [ $? = 0 ] ; then
echo "TRANSFERT FICHIERS"
get /var/ftproot/comptage/MAJ/. /var/MAJ #fichiers réceptionnés sur le 192.168.X.X (ici : variable pour reconnaître IP)
rm /var/ftproot/comptage/MAJ/.
exit
else
echo "ERREUR CONNEXION"
if [ $(df / | grep -v Taille | awk ‘{print $5}’ | sed -e “s/%//”) -ge 80 ] ; #si occupation de l’espace disque supérieur à 80 %
then
echo "ESPACE DISQUE INSUFFISANT"
else
echo "INSTALLATION"
apt-get install ssh
sftp comptage@5.196.X.X
get /var/ftproot/comptage/MAJ/. /var/MAJ #fichiers réceptionnés sur le 192.168.X.X (ici : variable pour reconnaître IP)
rm /var/ftproot/comptage/MAJ/.
exit
fi
fi