Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > Unix
Unix Forum d'entraide sur les systèmes Unix et dérivés (*BSD, AIX, etc.). Avant de poster ->F.A.Q BSD F.A.Q. Aix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/02/2011, 12h02   #1
Invité de passage
 
Inscription : février 2008
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 13
Points : 3
Points : 3
Par défaut script sous unix (novice)

bonjour étant novice sous Unix je me permet de vous solliciter pour une tache délicate
je dois réaliser un script sous unix mais le problème c'est que c'est ma premiere fois que je fait une telle chose, j'ai dans un premier tps avec bcp de recherche sur le net réussi a isolé toutes le commande que je dois faire dans l'ordre pour mon travail il me reste a automatiser tout ça mais ne sais pas du tout comment mis prendre
d'avance merci pour votre aide

Copier es fichiers dans une arbo interne
Code :
1
2
3
cp -r /usr/local/tomate/qake/ /usr/local/bonbon/
cp -r /usr/local/gateau/ /usr/local/bonbon
Zipper les arborescences dans leur état à l’instant t,
Code :
1
2
3
tar cf bonbon.tar bonbon/
bzip2 bonbon.tar
Générer le fichier md5
Code :
1
2
cksum bonbon.tar.bz2 > bonbon.tar.bz2.md5
Déposer le zips et la signature sur un serveur en utilisant les tuples de connection (1 tuple login/mot de passe par arborescence),
Code :
1
2
ftp -in </usr/local/ftp.cmd
(le fichier ftp.cmd contient les info de connection ftp ainsi que les commandes pour la copie testé fonctionnel)

si vous pouvez m'aider a l'intégrer dans un scripte automatique qui se lance a intervalle régulier (crontab il me semble) je vous en serrais très reconnaissant

cdt
gallux est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/02/2011, 15h13   #2
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 464
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 464
Points : 9 585
Points : 9 585
Bonjour,

Un script, c'est une suite de commande. Rien de plus. Il suffit donc de mettre toutes les commandes a executer dans un unique fichier, et hop, ca roule. Ou presque

Precisions :
La premiere ligne du script sera :
Cela permet de preciser que le shell a utiliser est sh (present partout, c'est pratique).

Ensuite, vu que tu souhaites appeler ton script depuis la crontab, il faut que toutes les commandes soient appelees avec leur chemin absolu. Pour ce faire, il faut que tu trouves ce chemin, ce qui se fait avec la commande which :
$> which cp
/usr/bin/cp

Donc tu remplaces "cp" par "/usr/bin/cp" partout. Et tu fais pareil avec les autres commandes.

Ensuite, tu donnes les droits d'execution a ton fichier :
Explication :
chmod : changer le mode du fichier
u : utilisateur
+ : ajouter des droits
x : les droits d'execution

Ensuite, il faut que tu vois quand est-ce que tu veux executer ton script, et que tu regardes le man de la crontab pour "traduire". Cela devrait aussi te permettre de trouver la commande qui te permettra d'ouvrir la liste des jobs de la crontab (crontab -e tres probablement), dans laquelle tu ajouteras ton script.

Bon courage, mais tu arrives au bout !
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 24/02/2011, 15h54   #3
Invité de passage
 
Inscription : février 2008
Messages : 13
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 13
Points : 3
Points : 3
oui je vois le bout de la première partie merci
je me retrouve avec ça et ça fonctionne

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/ksh 

/usr/bin/cp -r /usr/local/qake/ /usr/local/bonbon/

/usr/bin/cp -r /usr/local/gateau/ /usr/local/bonbon/

/usr/bin/cd /usr/local/

/usr/bin/tar cf bobon.tar bobon/

/usr/bin/bzip2 bobon.tar

/usr/bin/cksum sbobon.tar.bz2 > bobon.tar.bz2.md5

/usr/bin/ftp -in </usr/local/ftp.cmd
#!/bin/ksh il parait que c'est ce qu'il me faut sous le shell Aix 5.1 de toute ça fonctionne

c'est maintenant que ça se corse je pense.
car une fois le zip et le fichier md5 transmis je dois intégrer dans le script une connexion distante (ssh telnet) afin de créer un nouveau fichier md5 sur le serveur distant et le comparer avec celui envoyé par ftp si pas d'erreur dézipper et copier

encore une fois je pense pas de soucis pour les commande mais comment intégrer une connexion ssh dans le script avec exécution des commandes
je sais même pas si c'est possible ???

merci a vous (surtout gangsoleil )
gallux est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/02/2011, 17h55   #4
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 464
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 464
Points : 9 585
Points : 9 585
Code :
/usr/bin/cd /usr/local/
Attention : cd ne doit pas etre appelee par son chemin absolu (petite subtilite que je n'ai pas comprise). Pour verifier, appelles la commande 'pwd' apres

Citation:
comment intégrer une connexion ssh dans le script avec exécution des commandes
je sais même pas si c'est possible ???
Tu souhaites, a la fin de ton script, lancer une commande depuis le script sur l'ordi distant pour savoir si le transfert s'est bien effectue ?

Ajoute, a la fin de ton script, ssh -c "commande a executer sur l'ordi distant" nom_de_l_ordi

Bien sur, cela va te demander un login et un mot de passe. Mais il est possible de s'en afranchir en utilisant des cles de connexions.

Et si ce n'est pas ca, n'hesite pas a re-expliquer
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 25/02/2011, 15h58   #5
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 876
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 876
Points : 1 619
Points : 1 619
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
Pour le contrôle par ssh, refais un petit script qui va faire les vérifications, et lance le grâce à la commande donnée par gangsoleil (ssh -c...)
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 27/02/2011, 05h50   #6
Invité de passage
 
Jean-Jacques Dhénin
Inscription : février 2011
Messages : 1
Détails du profil
Informations personnelles :
Nom : Jean-Jacques Dhénin

Informations forums :
Inscription : février 2011
Messages : 1
Points : 4
Points : 4
Citation:
Envoyé par Alek-C Voir le message
Pour le contrôle par ssh, refais un petit script qui va faire les vérifications, et lance le grâce à la commande donnée par gangsoleil (ssh -c...)
Pour copier sur une machine distante et vérifier dans la foulée, en utilisant la sécurité ssh j'utilise rsync.

Hope this help
dhenin est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/02/2011, 15h17   #7
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 464
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 464
Points : 9 585
Points : 9 585
Citation:
Envoyé par dhenin Voir le message
Pour copier sur une machine distante et vérifier dans la foulée, en utilisant la sécurité ssh j'utilise rsync.
C'est effectivement une autre possibilite. Gallux, qu'en penses-tu ?
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h33.


 
 
 
 
Partenaires

Hébergement Web