Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

heeelp SHELL

94 réponses
Avatar
yvslart
bonjour tout le monde,
J esp=E8re trouver r=E9ponse =E0 mes questions sur ce forum et j esp=E8re
que
vous aurez un peu de patience parce que je suis d=E9butante en
programmation et j aimerai faire un programme qui semble un
peu .....dur puisque je n ai pa encore trouver de r=E9ponses!
Bon on suppose qu on est l administrateur d un parc informatique et
qu on veut:
1.Etre alert=E9 par e mail si jamais :
-l un des utilisateurs a d=E9pass=E9 le quota ceci dit 1Mo
-ou bien s il a d=E9pass=E9 1000 copies d impression

2.Eteindre tous les ordinateurs chaque vendredi =E0 19h
3.Faire une sauvegarde de donn=E9es de chaque ordinateur et l
enregistrer dans un r=E9pertoire qui aura de nom la date du jour o=F9 la
sauvegarde a =E9t=E9 faite et ce r=E9pertoire doit avoir pour
extension .tgz
(archiv=E9 et compress=E9)
Je note que cette sauvegarde doit aussi se faire chaque dimanche =E0
minuit.
Voil=E0 ceci est le programme et j ai des difficult=E9s avec ....je sais
que je dois utiliser le CRONTAB pour les taches planifi=E9es mais =E0
part
sa....rien!!!
Plz help et je vous remercie =E0 l avance

10 réponses

1 2 3 4 5
Avatar
Nicolas George
yvslart wrote in message
:
vous aurez un peu de patience parce que je suis débutante en
programmation et j aimerai faire un programme qui semble un
peu .....dur puisque je n ai pa encore trouver de réponses!
Bon on suppose qu on est l administrateur d un parc informatique et
qu on veut:


<snip>

Ça ressemble furieusement à un exercice.
Avatar
Bruno Tréguier
Le 02/01/2010 à 22:42, yvslart a écrit :
bonjour tout le monde,



Bonsoir,


J espère trouver réponse à mes questions sur ce forum et j espère
que
vous aurez un peu de patience parce que je suis débutante en
programmation et j aimerai faire un programme qui semble un
peu .....dur puisque je n ai pa encore trouver de réponses!
Bon on suppose qu on est l administrateur d un parc informatique et
qu on veut:



Hum. Votre formulation (et aussi un peu votre... style ;-) ) laissent à
penser que vous êtes encore à l'école et que vous êtes en train
d'exposer un TP que vous avez à faire... Si c'est cela, je veux bien,
pour ma part, vous donner quelques pistes, mais n'attendez pas une
solution complète...


1.Etre alerté par e mail si jamais :
-l un des utilisateurs a dépassé le quota ceci dit 1Mo
-ou bien s il a dépassé 1000 copies d impression



Ca, ça fait 1 programme. 1 Mo me semble ridiculement petit, soit dit en
passant. ;-) Ne serait-ce pas plutôt 1 Go ?


2.Eteindre tous les ordinateurs chaque vendredi à 19h



Ca, ça en fait un 2ème.


3.Faire une sauvegarde de données de chaque ordinateur et l
enregistrer dans un répertoire qui aura de nom la date du jour où la
sauvegarde a été faite et ce répertoire doit avoir pour
extension .tgz
(archivé et compressé)
Je note que cette sauvegarde doit aussi se faire chaque dimanche à
minuit.



Et en voilà un 3ème.


Voilà ceci est le programme et j ai des difficultés avec ....je sais
que je dois utiliser le CRONTAB pour les taches planifiées mais à
part
sa....rien!!!
Plz help et je vous remercie à l avance



Effectivement, dans les 3 cas, le plus simple est d'utiliser le système
de crontab disponible sous Unix, mais si j'étais vous, je le ferais en 3
programmes différents, la périodicité des actions étant différente pour
chacun d'entre eux. Le but également, d'ailleurs, et il n'est pas
mauvais (bien au contraire) de ne pas mélanger les torchons et les
serviettes: 1 programme donné pour 1 tâche donnée (si elles ne sont pas
liées entre elles).

Cela dit, pour pouvoir [tenter de] répondre à vos interrogations, il
manque encore quelques éléments:

- vos ordinateurs sont-ils connectés en réseau ? Dans un tel cas, les
données sont-elles présentes sur chaque machine, ou sont-elles
centralisées sur un serveur (via NFS par exemple) ?
- de quelle(s) version(s) d'Unix s'agit-il ? Les commandes
d'administration peuvent en effet varier d'une version à l'autre...
- lors de l'arrêt programmé du vendredi soir 19 heures, comment est-il
prévu de gérer la présence d'un utilisateur toujours connecté ?
- à propos de la sauvegarde: que voulez-vous dire par le fait qu'elle
doit *aussi* se faire chaque dimanche soir ? Est-ce à dire qu'une 1ère
sauvegarde est faite juste avant l'extinction de la machine chaque
vendredi soir ? Par ailleurs, pour la sauvegarde du dimanche soir,
comment a-t-elle lieu si les machines ont été arrêtées le vendredi à 19h
? Quelqu'un passe pour les rallumer entre-temps ? ;-)

Si vous pouviez en dire un petit peu plus sur ces points obscurs... Merci !

Cordialement,

Bruno

P.S.: vous n'avez pas de touche "apostrophe" sur votre clavier ?
Avatar
Bruno Tréguier
Le 02/01/2010 à 23:38, Nicolas George a écrit :

Ça ressemble furieusement à un exercice.



Bonsoir Nicolas,

Vous m'avez devancé, pendant que j'étais en train de rédiger ma propre
réponse... ;-)

Cordialement,

Bruno
Avatar
yvslart
D'abord je cite que OUI c'est un projet et non un exercice de TP mais
cela ne veut pas dire que je donne mes exercices à faire par d'autres
NON j ai essayé pas mal de cites j'ai meme pu faire un exemple pour la
sauveagrde en utilisant la commande dd avec l'aide bien sur de
généreux informaticiens mais je ne suis pas encore convaincu et je ne
sais pas si sa va marcher alors je veux plus d'aide et si jamais tu
veux que je poste l'essai je le ferai.........
Pour les questions oui tu as raison on peut le faire séparément et
c'est mieux comme tu l'as dit.
Maintenant pour les ambiguités du programme :
-Les ordinateurs sont connectés en réseau et les données de chaque
ordinateur se trouvent sur l ordinateur.
-pour la version d'Unix alors aucune idée mais on peut on choisir une
utilisons KDE par exemple KUBUNTU
-Pour l'arrêt des ordinateurs on fera un arrêt forcé je pense que
l'utilisateur soit connecté ou pas les ordinateurs s'éteindront s'il a
besoin de se connecter il n'a qu'à contacter le root (je pense qu'on
utilise:shutdown -s -f )
-Et là une question tout à fait ligitime et tu sais quoi je n'y avais
pas fait attention mais puisque ceci est impossible(Quelqu'un passe
pour les rallumer entre-temps ? ;-) alors je pense qu'il vaudrait
mieux changer l'heure et la date et on fera:samedi à midi :) sa vous
arrange??
PS:pour l'apostrophe i'm tryin haaaard :)
Avatar
bruno666
yvslart a écrit :

D'abord je cite que OUI c'est un projet et non un exercice de TP mais
cela ne veut pas dire que je donne mes exercices à faire par d'autres
NON j ai essayé pas mal de cites j'ai meme pu faire un exemple pour la
sauveagrde en utilisant la commande dd



Pas sûr que ce soit la meilleure solution pour une sauvegarde régulière des
documents des utilisateurs... Quelles autres solutions de sauvegarde avez-
vous envisagé ?




Maintenant pour les ambiguités du programme :
-Les ordinateurs sont connectés en réseau et les données de chaque
ordinateur se trouvent sur l ordinateur.



Ces ordinateurs tournent sous quel(s) OS ?



-pour la version d'Unix alors aucune idée mais on peut on choisir une
utilisons KDE par exemple KUBUNTU



KDE est environnement de bureau...Faut-il comprendre que le serveur devant
assurer les sauvegarde tourne sous GNU/Linux ? ou que ce sont les postes de
travail du réseau ? ou les deux ?



-Pour l'arrêt des ordinateurs on fera un arrêt forcé je pense que
l'utilisateur soit connecté ou pas les ordinateurs s'éteindront s'il a
besoin de se connecter il n'a qu'à contacter le root (je pense qu'on
utilise:shutdown -s -f )



Pas génial pour les utilisateurs qui sont en train de travailler...

-Et là une question tout à fait ligitime et tu sais quoi je n'y avais
pas fait attention mais puisque ceci est impossible(Quelqu'un passe
pour les rallumer entre-temps ? ;-)



il me semble qu'on peut rallumer un ordinateur à distance si le matériel
gère le WOL

--
Bruno
Avatar
Bruno Tréguier
Le 03/01/2010 à 13:14, yvslart a écrit :
D'abord je cite que OUI c'est un projet et non un exercice de TP mais
cela ne veut pas dire que je donne mes exercices à faire par d'autres



Bonsoir,

Je n'ai pas dit ça non plus, je réagissais simplement au fait que vous
n'avez pas annoncé clairement la couleur. Si vous aviez situé le
contexte dès le départ, cela vous aurait épargné une telle remarque. ;-)


NON j ai essayé pas mal de cites j'ai meme pu faire un exemple pour la
sauveagrde en utilisant la commande dd avec l'aide bien sur de
généreux informaticiens mais je ne suis pas encore convaincu et je ne
sais pas si sa va marcher alors je veux plus d'aide et si jamais tu
veux que je poste l'essai je le ferai.........



Pas la peine, je ne fais pas de corrections non plus. :-D


Pour les questions oui tu as raison on peut le faire séparément et
c'est mieux comme tu l'as dit.
Maintenant pour les ambiguités du programme :
-Les ordinateurs sont connectés en réseau et les données de chaque
ordinateur se trouvent sur l ordinateur.



D'accord. Si j'ai bien compris ce que vous voulez dire: il n'y a pas de
"serveur" au sens propre du terme, et chaque machine conserve ses
propres données sur son disque local. C'est bien ça ?


-pour la version d'Unix alors aucune idée mais on peut on choisir une
utilisons KDE par exemple KUBUNTU



Ok.


-Pour l'arrêt des ordinateurs on fera un arrêt forcé je pense que
l'utilisateur soit connecté ou pas les ordinateurs s'éteindront s'il a
besoin de se connecter il n'a qu'à contacter le root (je pense qu'on
utilise:shutdown -s -f )



La commande est la bonne, mais d'où sortez-vous vos paramètres ? Quand
je disais dans mon précédent message que la version d'Unix avait une
importance, c'est justement dans ce genre de cas que ça se voit.
L'option "-f" peut par exemple signifier "forcer le shutdown" (en
bypassant certaines vérifications) ou "ne pas faire de vérification des
systèmes de fichiers au redémarrage"... A vous de choisir les bons
arguments en fonction de votre version d'Unix et des effets voulus.

Après, pour cette commande-là comme pour les autres, il faut vous
intéresser au format du fichier de configuration de la commande crontab.


-Et là une question tout à fait ligitime et tu sais quoi je n'y avais
pas fait attention mais puisque ceci est impossible(Quelqu'un passe
pour les rallumer entre-temps ? ;-) alors je pense qu'il vaudrait
mieux changer l'heure et la date et on fera:samedi à midi :) sa vous
arrange??



Ce n'est pas moi qu'il faut chercher à arranger, c'est votre énoncé ! :-)

Vous pensez vraiment que votre nouvel horaire de sauvegarde est plus
adapté que le précédent ? Je vous rappelle, à toutes fins utiles, que
vos machines sont arrêtées depuis le vendredi soir...


PS:pour l'apostrophe i'm tryin haaaard :)



C'est si dur que ça de respecter les conventions (de tous ordres) ? ;-)

Cordialement,

Bruno
Avatar
Mihamina Rakotomandimby
yvslart:

D'abord je cite que OUI c'est un projet et non un exercice de TP mais
cela ne veut pas dire que je donne mes exercices à faire par d'autres
NON j ai essayé pas mal de cites j'ai meme pu faire un exemple pour la
sauveagrde en utilisant la commande dd avec l'aide bien sur de généreux
informaticiens mais je ne suis pas encore convaincu et je ne sais pas si
sa va marcher



Si ils t'ont aidé alors que tu présentes tes questions comme tu viens de
le faire, c'est qu'ils ne sont pas rigoureux.

De plus, il n'y a pas lieu de "penser que ça va marcher": tu essaies et
tu déduis toi meme si ça marche ou pas.

alors je veux plus d'aide



On ne veut pasplus d'aide, on en demande.


Maintenant pour les ambiguités du programme : -Les ordinateurs sont
connectés en réseau et les données de chaque ordinateur se trouvent sur
l ordinateur.



Heureusement.

-pour la version d'Unix alors aucune idée mais on peut on
choisir une utilisons KDE par exemple KUBUNTU



Je te conseille plutot une Xubuntu.

-Pour l'arrêt des ordinateurs on fera un arrêt forcé je pense que
l'utilisateur soit connecté ou pas les ordinateurs s'éteindront s'il a
besoin de se connecter il n'a qu'à contacter le root (je pense qu'on
utilise:shutdown -s -f )



Nous sommes en 2010, il y a des moyens intelligents de travailler.
On revient aux années 70, là.

-Et là une question tout à fait ligitime et tu sais quoi je n'y avais
pas fait attention mais puisque ceci est impossible(Quelqu'un passe pour
les rallumer entre-temps ? ;-)



Sur des machines qui valent la peine, on peut avoir le WOL (cherche)

alors je pense qu'il vaudrait mieux
changer l'heure et la date et on fera:samedi à midi :) sa vous arrange??



Moi je m'en fous.
Tu fais un programme pour nous ou pour tes utilisateurs?

PS:pour l'apostrophe i'm tryin haaaard :)



Pas seulement:
- passer à la ligne lors des énumérations
- revoir l'orthographe
- montrer que tu as un minimum cherché ET essayé, nous soumettre tes
conclusions.
- mettre un "sujet" plus precis

--
/home/mihamina/.signature
Avatar
yvslart
Bonjour tout le monde
Navrée d avoir un peu disparu mais j ai eu un problçme de batterie je
viens d en acheter une autre!
Pour vos réponses elles eont un peu .........vagues je n'en déduit que
des comentaires sur mon orthographe sauf quelque questions bien sur
auxquelles je dois répondre!
Déjà on doit faire le programme avec le minimum de moyens ceci veut
dire on suppose que ya pa de WOL que c est un peu primitif si on veut
parce qu'on sur le KUBUNTU que j ai le shutdown -s -f travaille très
bien et c'est l objectif d'éteindre les ordinateurs à une heure
précise.
Alors j'aimerai savoir une chose : est-ce qu'on pourrai mettre de
côté les problèmes d orthographe et passer au programme?? Si vous
voulez bien ....
1-the first part of the programme:
pour envoyer un mail par exemple
echo "there is a problem" | mail -s "This is subject"

<<<mais le problème comment faire rentrer les deux conditions pour le
quota et l impression??

2-Maintenant l'extinction des ordinateurs chaque samedi à midi
je sais qu'on peut faire:
crontab -e pour lancer l éditeur et puis: 00 12 *
6 ;;;;;;;;;;;;;;;;MAIS où faut il introduire le shutdown -s -f ?

3- Là la sauvegarde !!!
alors là no idea j ai pu avoir un exemple mais qui utilise le numéro
de la machine mais la question que je me pose c est quell est la
commande pour le récupérer? Bon voilà un exemple mais j ai besoin de
quelques explications :
Je fais une sauvegarde depuis la machine 10.0.0.3 sur ma machine
10.0.0.10

$ /sbin/ifconfig wlan0 | grep -o 'adr:.*'
adr:10.0.0.10 Bcast:10.0.0.255 Masque:255.255.255.0
:~$ ssh ls -ld modules_cpan
's password:
drwxr-xr-x 7 lami20j lami20j 4096 mai 30 2009 modules_cpan
$ ssh du -sh modules_cpan
's password:
44M modules_cpan
$ ssh tar czf - modules_cpan | dd
of=home_lami20j_modules_cpan_$(date '+%d%m%Y').tar.gz bs=1M
's password:
0+998 enregistrements lus
0+998 enregistrements écrits
16337256 octets (16 MB) copiés, 32,1809 s, 508 kB/s
$ du -sh home_lami20j_modules_cpan_15122009.tar.gz
16M home_lami20j_modules_cpan_15122009.tar.gz
#####################Pas de questions sur cette partie svp parce que j
ai beaucoup de questions aussi so please help et merci pour votre
temps ,i appreciate
Avatar
Bruno Tréguier
Le 07/01/2010 à 20:37, yvslart a écrit :
Bonjour tout le monde



Bonsoir,


Navrée d avoir un peu disparu mais j ai eu un problçme de batterie je
viens d en acheter une autre!
Pour vos réponses elles eont un peu .........vagues je n'en déduit que
des comentaires sur mon orthographe sauf quelque questions bien sur
auxquelles je dois répondre!



A question vague, réponse vague, que voulez-vous ? Si vous souhaitez
être aidée, il faut exposer vos problèmes clairement, et le faire avec
un minimum de respect pour ceux qui prennent la peine de vous lire (car
oui, même si ça fait un peu discours de "vieux c*n", c'est bel et bien
de respect qu'il s'agit)...

[...]
Alors j'aimerai savoir une chose : est-ce qu'on pourrai mettre de
côté les problèmes d orthographe et passer au programme?? Si vous
voulez bien ....



Je ne pense pas que votre orthographe soit le problème, c'est juste un
symptôme.


1-the first part of the programme:
pour envoyer un mail par exemple
echo "there is a problem" | mail -s "This is subject"

<<<mais le problème comment faire rentrer les deux conditions pour le
quota et l impression??



Bon, vous savez envoyer un mail, c'est déjà ça, mais votre question est
un peu curieuse: ce qui vous inquiète, c'est de réunir les 2 conditions
pour son envoi ? Si l'on vous demandait de faire 2 programmes séparés,
l'un pour les quotas disques, l'autre pour les quotas d'impression, vous
sauriez le faire ? Si la réponse est oui, commencez comme ça, on verra
après comment faire pour réunir les deux...


2-Maintenant l'extinction des ordinateurs chaque samedi à midi
je sais qu'on peut faire:
crontab -e pour lancer l éditeur et puis: 00 12 *
6 ;;;;;;;;;;;;;;;;MAIS où faut il introduire le shutdown -s -f ?



man 5 crontab


3- Là la sauvegarde !!!
alors là no idea j ai pu avoir un exemple mais qui utilise le numéro
de la machine mais la question que je me pose c est quell est la
commande pour le récupérer? Bon voilà un exemple mais j ai besoin de
quelques explications :



En toute rigueur, vous ne devriez pas avoir à utiliser les adresses IP
des machines. Sur votre réseau, il doit y avoir, quelque part, un
"serveur DNS" qui fait les conversions entre les noms de machines et ces
adresses IP. Au pire, si vous n'avez pas de DNS, les machines peuvent
faire cette conversion grâce au fichier /etc/hosts situé sur chacune
d'entre elles et qui contient les correspondances nom <-> IP.


Je fais une sauvegarde depuis la machine 10.0.0.3 sur ma machine
10.0.0.10

$ /sbin/ifconfig wlan0 | grep -o 'adr:.*'
adr:10.0.0.10 Bcast:10.0.0.255 Masque:255.255.255.0
:~$ ssh ls -ld modules_cpan
's password:
drwxr-xr-x 7 lami20j lami20j 4096 mai 30 2009 modules_cpan
$ ssh du -sh modules_cpan
's password:
44M modules_cpan
$ ssh tar czf - modules_cpan | dd
of=home_lami20j_modules_cpan_$(date '+%d%m%Y').tar.gz bs=1M
's password:
0+998 enregistrements lus
0+998 enregistrements écrits
16337256 octets (16 MB) copiés, 32,1809 s, 508 kB/s
$ du -sh home_lami20j_modules_cpan_15122009.tar.gz
16M home_lami20j_modules_cpan_15122009.tar.gz
#####################Pas de questions sur cette partie svp parce que j
ai beaucoup de questions aussi so please help et merci pour votre
temps ,i appreciate



Vous semblez avoir "pioché" cet exemple quelque part sur Internet, sans
y comprendre quoi que ce soit, en fait... Je me trompe ? Je suis
vraiment désolé, mais si vous cherchez des solutions de cette manière,
on ne va pas s'entendre.

L'exercice que vous exposez n'est pas très complexe pour un
administrateur système (même si l'histoire des quotas d'impression n'est
pas forcément des plus aisées à mettre en place), mais il nécessite un
minimum de connaissances que vous ne semblez pas du tout maîtriser. Un
peu comme si on vous avait demandé d'écrire un roman alors que vous ne
connaissez pas encore très bien l'alphabet.

J'ai donc vraiment du mal à croire que votre prof vous ait donné un tel
boulot sans que vous soyez au moins un peu accoutumée à la rédaction de
shell scripts, ou plus exactement, *censée* l'être. Vous avez séché les
cours ?

Au stade où vous en êtes (tout au moins en apparence), il me semble que
ce qui pourrait vous apporter le plus d'aide, c'est la lecture de
quelques ouvrages de référence dans le domaine, comme par exemple
(puisque vous semblez apprécier l'anglais ;-) ): "Learning the bash
shell" et "Unix in a Nutshell", chez O'Reilly (mais il y en a plein
d'autres, chez d'autres éditeurs aussi).

Cordialement,

Bruno
Avatar
yvslart
D abord je ne vois pas que j ai offensé ou manqué de respect pour à
personne au contraire j ai meme exprimer ma gratitude envers le temps
que vous passez à m écrire .....Je crois que vous me devez des excuses
pour sa Bruno parce que sa me touche croyez ou non!
Et pour le projet tu as peut etre raison mais en fait ce fut l
objectif du prof:il s avère qu on a pas bcp de temps pour pouvoir
aborder le shell comme il faut alors il nous a donné ce projet qui
bien sur est au dessus de nos moyens et c l a raison pour laquelle je
demande de l aide.
1- je ne sais pas comment préciser les conditions par exemple en C on
écrit
####if((quota00)||(print00))
envoyer mail
#### c est juste un exemple pour vous dire que je ne sais pas par
quelle commande on peut faire la première phrase!!
3-pour l exemple je ne l ai pa "pioché" ohhh la la Bruno vous me devez
de sacrées excuses sincèrement vous me prenez pour une c*nne!!!j ai
bien dit que j ai déjà demandé de l aide et qu on m a proposé et
exemple sans me l expliquer ceci est la rasion pour laquelle j ai
décidé de poster une autre fois ce problème parce que je ne veux pas
la solution sans la comprendre je veu y aller step by step even if i
don t hav enough time anymore!(PS : i looove English lol) .
Bon au tout début j avais pensé à un truc mais j ai besoin de votre
avis :je me suis dit que pour faire la sauvegarde de toutes les
données je pourrai faire un script en shell qui va copier tous mes
fichiers depuis la racine et comme seul le root se trouve sur la
racine (arbre ) donc meme s il ya des users il pourra accéder à leur
session et faire la copie but........
- est ce qu il aura besoin de mot de passe à chaque fois que la copie
va entrer dans une session?
-comment faire pour ne copier que des documents et non pas des
logiciels par exemple parce que la copie sans spécification peut
engendrer la copie de "choses" inutiles puisqu on cherche tout
simplement à faire la sauvegarde de données?
Et pour les livres merci de m avoir donné des noms je vais m y mettre
mais pas maintenant lors des vacances parce que maintenant je suis en
pleine préparation des examens et il ne me reste que ....disons deux
semaines pour rendre ce projet ......j espère que vous serez plus
"gentil" Bruno :) parce que c est des informaticiens "gentils"
et"généreux" qui ont permis l'apparition de LINUX.....l open source c
est des sacrifices
1 2 3 4 5