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
En fait pour l'impression j'ai trouvé le moyen de définir la période mais le problème c'est qu'elle soit être entrée en secondes!! un jour =†.400 sec donc un an !!!! -->Est-ce qu'on est obligé de faire le calcul ou bien on peut l'entrer autrement?
-->Je pense que maintenant pour l'impression c'est ceci: lpadmin -o job-page-limit00 quota-period=!!!!(en attendant vos rép) lpadmin -A 'mail `logname`' -W 30 ##envoyer un mail à l'utilisateur chaque 30 min
En fait pour l'impression j'ai trouvé le moyen de définir la période
mais le problème c'est qu'elle soit être entrée en secondes!! un jour
==86.400 sec donc un an !!!!
-->Est-ce qu'on est obligé de faire le calcul ou bien on peut
l'entrer autrement?
-->Je pense que maintenant pour l'impression c'est ceci:
lpadmin -o job-page-limit=1000 quota-period=!!!!(en attendant vos
rép)
lpadmin -A 'mail `logname`' -W 30 ##envoyer un mail à
l'utilisateur chaque 30 min
En fait pour l'impression j'ai trouvé le moyen de définir la période mais le problème c'est qu'elle soit être entrée en secondes!! un jour =†.400 sec donc un an !!!! -->Est-ce qu'on est obligé de faire le calcul ou bien on peut l'entrer autrement?
-->Je pense que maintenant pour l'impression c'est ceci: lpadmin -o job-page-limit00 quota-period=!!!!(en attendant vos rép) lpadmin -A 'mail `logname`' -W 30 ##envoyer un mail à l'utilisateur chaque 30 min
yvslart
Sa par contre je ne pourrai pas le tester je n'ai pas d'imprimante mais je suis sure que grâce à votre expérience vous pouvez savoir si sa peut fonctionner ou pas.
Sa par contre je ne pourrai pas le tester je n'ai pas d'imprimante
mais je suis sure que grâce à votre expérience vous pouvez savoir si
sa peut fonctionner ou pas.
Sa par contre je ne pourrai pas le tester je n'ai pas d'imprimante mais je suis sure que grâce à votre expérience vous pouvez savoir si sa peut fonctionner ou pas.
Bruno Tréguier
Le 15/01/2010 à 21:27, yvslart a écrit :
Donc erreur dans TAILLE=$(du -s -k /home |cut -f1) ?
Là il n'y a pas d'erreur... En revanche, reprenez ce que vous aviez écrit précédemment, vous verrez que cette ligne n'est pas identique à la version précédente.
Cordialement,
Bruno
Le 15/01/2010 à 21:27, yvslart a écrit :
Donc erreur dans TAILLE=$(du -s -k /home |cut -f1) ?
Là il n'y a pas d'erreur... En revanche, reprenez ce que vous aviez
écrit précédemment, vous verrez que cette ligne n'est pas identique à la
version précédente.
Donc erreur dans TAILLE=$(du -s -k /home |cut -f1) ?
Là il n'y a pas d'erreur... En revanche, reprenez ce que vous aviez écrit précédemment, vous verrez que cette ligne n'est pas identique à la version précédente.
Cordialement,
Bruno
Cyrille Lefevre
yvslart a écrit :
En fait pour l'impression j'ai trouvé le moyen de définir la pér iode mais le problème c'est qu'elle soit être entrée en secondes!! un jour =†.400 sec donc un an !!!! -->Est-ce qu'on est obligé de faire le calcul ou bien on peut l'entrer autrement?
PS : pas besoin de $ si les variables représentent un entier.
la forme (( ... )), peut également s'écrire let "...", mais j'aime mo ins.
certaines contractions sont supportées, d'autres non :
temps` # ajout de 1, ksh, bash (( temps = temps + 1 )) # par contraction, ksh, bash (( temps += 1 )) # idem, pdksh, bash, ksh93, mais pas ksh88 (( temps++ ))
-->Je pense que maintenant pour l'impression c'est ceci: lpadmin -o job-page-limit00 quota-period=!!!!(en attendant v os rép) lpadmin -A 'mail `logname`' -W 30 ##envoyer un mail à l'utilisateur chaque 30 min
Hi, Bonjour,
Regards, Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre. remove "%nospam" and ".invalid" to answer me.
yvslart a écrit :
En fait pour l'impression j'ai trouvé le moyen de définir la pér iode
mais le problème c'est qu'elle soit être entrée en secondes!! un jour
==86.400 sec donc un an !!!!
-->Est-ce qu'on est obligé de faire le calcul ou bien on peut
l'entrer autrement?
PS : pas besoin de $ si les variables représentent un entier.
la forme (( ... )), peut également s'écrire let "...", mais j'aime mo ins.
certaines contractions sont supportées, d'autres non :
temps=60
# ajout de 1, ksh, bash
(( temps = temps + 1 ))
# par contraction, ksh, bash
(( temps += 1 ))
# idem, pdksh, bash, ksh93, mais pas ksh88
(( temps++ ))
-->Je pense que maintenant pour l'impression c'est ceci:
lpadmin -o job-page-limit=1000 quota-period=!!!!(en attendant v os
rép)
lpadmin -A 'mail `logname`' -W 30 ##envoyer un mail à
l'utilisateur chaque 30 min
Hi, Bonjour,
Regards, Cordialement,
Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%nospam@laposte.net.invalid
supprimer "%nospam% et ".invalid" pour me repondre.
remove "%nospam" and ".invalid" to answer me.
En fait pour l'impression j'ai trouvé le moyen de définir la pér iode mais le problème c'est qu'elle soit être entrée en secondes!! un jour =†.400 sec donc un an !!!! -->Est-ce qu'on est obligé de faire le calcul ou bien on peut l'entrer autrement?
PS : pas besoin de $ si les variables représentent un entier.
la forme (( ... )), peut également s'écrire let "...", mais j'aime mo ins.
certaines contractions sont supportées, d'autres non :
temps` # ajout de 1, ksh, bash (( temps = temps + 1 )) # par contraction, ksh, bash (( temps += 1 )) # idem, pdksh, bash, ksh93, mais pas ksh88 (( temps++ ))
-->Je pense que maintenant pour l'impression c'est ceci: lpadmin -o job-page-limit00 quota-period=!!!!(en attendant v os rép) lpadmin -A 'mail `logname`' -W 30 ##envoyer un mail à l'utilisateur chaque 30 min
Hi, Bonjour,
Regards, Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre. remove "%nospam" and ".invalid" to answer me.
Benoit Izac
Bonjour,
le 15/01/2010 à 23:01, Cyrille Lefevre a écrit dans le message <hiqoht$315p$ :
Ajoutons bc(1) lorsque l'on veut faire des calculs avec autre chose que des entiers.
-- Benoit Izac
Cyrille Lefevre
yvslart a écrit :
Salut tout le monde je voulais vois dire qu'en surfant (afin de trouver cette fameuse commande de "du") j'ai trouvé un programme qui permet de déterminer un pourcentage de l'espace utilisé de mon répertoire et d'envoyer un mail si je l'atteins : Le voilà
#! /usr/bin/ksh
beurk, pour du "korn shell", j'ai vu mieux...
typeset fs_to_look="/soft /data" typeset -i percent_used_warn typeset result="" typeset tmp="" typeset msg="l'espace utilise sur $curr_to_look est supp a $percent_used_warn%"
df -k | while read curr_fs do for curr_to_look in $fs_to_look do tmp=$( echo $curr_fs |
manque les "
awk ' $( NF )=="'"$curr_to_look"'" { print $4 } '
quid si le résultat de df est sur 2 lignes :
/long/path/to/dev size used avail %use /path/to/mount/point
au lieu de
path/to/dev size used avail %use /path/to/mount/point
)
>
[ -z "$tmp" ] && continue
[ "`echo $tmp | sed 's:%::g'`" -ge "$percent_used_warn" ] &&
en ksh, "`echo $tmp | sed 's:%::g'`" doit s'écrire : tmp=${tmp%%} # ou tmp=${tmp%[%]} en ksh, [ ... -ge .. ] doit s'écrire : (( ${tmp%%} > $percent_used_warn ))
result="$result `eval echo $msg`"
admettons, mais avec des $() alors.
done done
[ ! -z "$result" ] && echo "`date +%D`: $result"
attention, la construction commande | while ... ne fonctionne pas sous tous les shells. sous bash, pas ex., la partie droite est exécutée da ns un sous-shell, alors qu'en ksh, est est exécuté dans le shell courant . la différence est primordiale, dans le sens ou les affectations de variables dans la partie droite ont lieu dans le shell courant ou non. autrement dit, cette construction est à éviter absolument. on lui préfèrera la construction suivante :
save_dev= while read dev size used avail percent mnt; do if [[ -z $size ]]; then save_dev=$dev continue elif [[ -n $save_dev ]]; then dev=$save_dev mnt=$percent percent=$avail avail=$used used=$size size=$dev fi ... done << EOF $(df -k) EOF
Qu'est-ce que vous en pensez?( à la place de /soft/data je mets / home) Alors maintenant soit : -je cherche une commande pour entrer à la place du pourcentag e une valeur (comme sa je mets 1 Mo) -soit je cherche une commande pour limiter l'espace du /home à 1Mo et je laisse les pourcentages
d'après ce que j'ai compris dans ton énoncé initiale, il s'agissait de quota, alors que l'exemple que tu as trouvé concerne la volumétrie d' un fs (système de gestion de fichiers pour les puriste, sgf en français dans le texte :-). un quota ne concerne qu'un utilisateur donnée, un sgf, concerne tous le s utilisateurs de ce dernier.
2 solutions, la façon pauvre, surement ce que tu dois faire, et la faç on académique, direction man quota
à propos des quota système, attention, il y a 2 limites, la soft et l a hard. il est possible d'augmenter sa consommation d'espace tant que l'on est en dessous de la limite hard, le système émet un warning entre la limite soft et la hard, en dessous de la limite soft, R.A.S.
dans ton cas, ce sera plutôt donc direction man du -s pour chaque utilisateur à comparer avec la limite que l'on te donne. attention, le home d'un utilisateur n'est pas nécessairement /home/utilisateur, cf ma n 5 passwd
Il y a certainement de l'idée ;) ......mais à vous de me mettre sur la bonne voie.
Sinon d'après vos commentaires et suggestions :
TAILLE=$(`du -s -k /home | cut -f1`)
c'est sois les `(backquote), soit les $(), mais pas les deux à la fois.
if [ "${TAILLE}" -ge 1000 ] then mail -s "attention" <sujet_mail fi
-->J'ai trouvé que pour GNU -k permet de donner les résultats e n kilo bytes et puis le -s affichait seulement le total pour chaque argument.(plus besoin de cut je pense!)
tu as même l'option -h pour human readable qui adapte l'unité en fonction de la taille. pour autant, reste en -k, plus facile pour scripter car il n'y a pas de suffixe tel que K, M, G, etc.
-->Est- ce que je dois mettre les `` ou non?
Je vous remercie tous et toutes pour votre aide .
Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre.
yvslart a écrit :
Salut tout le monde je voulais vois dire qu'en surfant (afin de
trouver cette fameuse commande de "du") j'ai trouvé un programme qui
permet de déterminer un pourcentage de l'espace utilisé de mon
répertoire et d'envoyer un mail si je l'atteins :
Le voilà
#! /usr/bin/ksh
beurk, pour du "korn shell", j'ai vu mieux...
typeset fs_to_look="/soft /data"
typeset -i percent_used_warn=10
typeset result=""
typeset tmp=""
typeset msg="l'espace utilise sur $curr_to_look est supp a
$percent_used_warn%"
df -k |
while read curr_fs
do
for curr_to_look in $fs_to_look
do
tmp=$(
echo $curr_fs |
manque les "
awk ' $( NF )=="'"$curr_to_look"'" { print $4 } '
quid si le résultat de df est sur 2 lignes :
/long/path/to/dev
size used avail %use /path/to/mount/point
au lieu de
path/to/dev size used avail %use /path/to/mount/point
)
>
[ -z "$tmp" ] && continue
[ "`echo $tmp | sed 's:%::g'`" -ge "$percent_used_warn" ] &&
en ksh, "`echo $tmp | sed 's:%::g'`" doit s'écrire :
tmp=${tmp%%} # ou tmp=${tmp%[%]}
en ksh, [ ... -ge .. ] doit s'écrire :
(( ${tmp%%} > $percent_used_warn ))
result="$result `eval echo $msg`"
admettons, mais avec des $() alors.
done
done
[ ! -z "$result" ] && echo "`date +%D`: $result"
attention, la construction commande | while ... ne fonctionne pas sous
tous les shells. sous bash, pas ex., la partie droite est exécutée da ns
un sous-shell, alors qu'en ksh, est est exécuté dans le shell courant .
la différence est primordiale, dans le sens ou les affectations de
variables dans la partie droite ont lieu dans le shell courant ou non.
autrement dit, cette construction est à éviter absolument. on lui
préfèrera la construction suivante :
save_dev=
while read dev size used avail percent mnt; do
if [[ -z $size ]]; then
save_dev=$dev
continue
elif [[ -n $save_dev ]]; then
dev=$save_dev
mnt=$percent
percent=$avail
avail=$used
used=$size
size=$dev
fi
...
done << EOF
$(df -k)
EOF
Qu'est-ce que vous en pensez?( à la place de /soft/data je mets /
home)
Alors maintenant soit :
-je cherche une commande pour entrer à la place du pourcentag e
une valeur (comme sa je mets 1 Mo)
-soit je cherche une commande pour limiter l'espace du /home à
1Mo et je laisse les pourcentages
d'après ce que j'ai compris dans ton énoncé initiale, il s'agissait de
quota, alors que l'exemple que tu as trouvé concerne la volumétrie d' un
fs (système de gestion de fichiers pour les puriste, sgf en français
dans le texte :-).
un quota ne concerne qu'un utilisateur donnée, un sgf, concerne tous le s
utilisateurs de ce dernier.
2 solutions, la façon pauvre, surement ce que tu dois faire, et la faç on
académique, direction man quota
à propos des quota système, attention, il y a 2 limites, la soft et l a
hard. il est possible d'augmenter sa consommation d'espace tant que l'on
est en dessous de la limite hard, le système émet un warning entre la
limite soft et la hard, en dessous de la limite soft, R.A.S.
dans ton cas, ce sera plutôt donc direction man du -s pour chaque
utilisateur à comparer avec la limite que l'on te donne. attention, le
home d'un utilisateur n'est pas nécessairement /home/utilisateur, cf ma n
5 passwd
Il y a certainement de l'idée ;) ......mais à vous de me mettre
sur la bonne voie.
Sinon d'après vos commentaires et suggestions :
TAILLE=$(`du -s -k /home | cut -f1`)
c'est sois les `(backquote), soit les $(), mais pas les deux à la fois.
if [ "${TAILLE}" -ge 1000 ]
then
mail -s "attention" n...@hotmail.com <sujet_mail
fi
-->J'ai trouvé que pour GNU -k permet de donner les résultats e n
kilo bytes et puis le -s affichait seulement le total pour chaque
argument.(plus besoin de cut je pense!)
tu as même l'option -h pour human readable qui adapte l'unité en
fonction de la taille. pour autant, reste en -k, plus facile pour
scripter car il n'y a pas de suffixe tel que K, M, G, etc.
-->Est- ce que je dois mettre les `` ou non?
Je vous remercie tous et toutes pour votre aide .
Cordialement,
Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%nospam@laposte.net.invalid
supprimer "%nospam% et ".invalid" pour me repondre.
Salut tout le monde je voulais vois dire qu'en surfant (afin de trouver cette fameuse commande de "du") j'ai trouvé un programme qui permet de déterminer un pourcentage de l'espace utilisé de mon répertoire et d'envoyer un mail si je l'atteins : Le voilà
#! /usr/bin/ksh
beurk, pour du "korn shell", j'ai vu mieux...
typeset fs_to_look="/soft /data" typeset -i percent_used_warn typeset result="" typeset tmp="" typeset msg="l'espace utilise sur $curr_to_look est supp a $percent_used_warn%"
df -k | while read curr_fs do for curr_to_look in $fs_to_look do tmp=$( echo $curr_fs |
manque les "
awk ' $( NF )=="'"$curr_to_look"'" { print $4 } '
quid si le résultat de df est sur 2 lignes :
/long/path/to/dev size used avail %use /path/to/mount/point
au lieu de
path/to/dev size used avail %use /path/to/mount/point
)
>
[ -z "$tmp" ] && continue
[ "`echo $tmp | sed 's:%::g'`" -ge "$percent_used_warn" ] &&
en ksh, "`echo $tmp | sed 's:%::g'`" doit s'écrire : tmp=${tmp%%} # ou tmp=${tmp%[%]} en ksh, [ ... -ge .. ] doit s'écrire : (( ${tmp%%} > $percent_used_warn ))
result="$result `eval echo $msg`"
admettons, mais avec des $() alors.
done done
[ ! -z "$result" ] && echo "`date +%D`: $result"
attention, la construction commande | while ... ne fonctionne pas sous tous les shells. sous bash, pas ex., la partie droite est exécutée da ns un sous-shell, alors qu'en ksh, est est exécuté dans le shell courant . la différence est primordiale, dans le sens ou les affectations de variables dans la partie droite ont lieu dans le shell courant ou non. autrement dit, cette construction est à éviter absolument. on lui préfèrera la construction suivante :
save_dev= while read dev size used avail percent mnt; do if [[ -z $size ]]; then save_dev=$dev continue elif [[ -n $save_dev ]]; then dev=$save_dev mnt=$percent percent=$avail avail=$used used=$size size=$dev fi ... done << EOF $(df -k) EOF
Qu'est-ce que vous en pensez?( à la place de /soft/data je mets / home) Alors maintenant soit : -je cherche une commande pour entrer à la place du pourcentag e une valeur (comme sa je mets 1 Mo) -soit je cherche une commande pour limiter l'espace du /home à 1Mo et je laisse les pourcentages
d'après ce que j'ai compris dans ton énoncé initiale, il s'agissait de quota, alors que l'exemple que tu as trouvé concerne la volumétrie d' un fs (système de gestion de fichiers pour les puriste, sgf en français dans le texte :-). un quota ne concerne qu'un utilisateur donnée, un sgf, concerne tous le s utilisateurs de ce dernier.
2 solutions, la façon pauvre, surement ce que tu dois faire, et la faç on académique, direction man quota
à propos des quota système, attention, il y a 2 limites, la soft et l a hard. il est possible d'augmenter sa consommation d'espace tant que l'on est en dessous de la limite hard, le système émet un warning entre la limite soft et la hard, en dessous de la limite soft, R.A.S.
dans ton cas, ce sera plutôt donc direction man du -s pour chaque utilisateur à comparer avec la limite que l'on te donne. attention, le home d'un utilisateur n'est pas nécessairement /home/utilisateur, cf ma n 5 passwd
Il y a certainement de l'idée ;) ......mais à vous de me mettre sur la bonne voie.
Sinon d'après vos commentaires et suggestions :
TAILLE=$(`du -s -k /home | cut -f1`)
c'est sois les `(backquote), soit les $(), mais pas les deux à la fois.
if [ "${TAILLE}" -ge 1000 ] then mail -s "attention" <sujet_mail fi
-->J'ai trouvé que pour GNU -k permet de donner les résultats e n kilo bytes et puis le -s affichait seulement le total pour chaque argument.(plus besoin de cut je pense!)
tu as même l'option -h pour human readable qui adapte l'unité en fonction de la taille. pour autant, reste en -k, plus facile pour scripter car il n'y a pas de suffixe tel que K, M, G, etc.
-->Est- ce que je dois mettre les `` ou non?
Je vous remercie tous et toutes pour votre aide .
Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre.
Benoit Izac
Bonjour,
le 16/01/2010 à 00:19, Cyrille Lefevre a écrit dans le message <hiqt55$iep$ :
Ajoutons bc(1) lorsque l'on veut faire des calculs avec autre chose que des entiers.
pourquoi pas dc(1) :-)
Parce qu'il n'est pas POSIX (et qu'il me fait mal à la tête).
-- Benoit Izac
Bonjour,
le 16/01/2010 à 00:19, Cyrille Lefevre a écrit dans le message
<hiqt55$iep$1@talisker.lacave.net> :
Ajoutons bc(1) lorsque l'on veut faire des calculs avec autre chose que
des entiers.
pourquoi pas dc(1) :-)
Parce qu'il n'est pas POSIX (et qu'il me fait mal à la tête).
le 16/01/2010 à 00:19, Cyrille Lefevre a écrit dans le message <hiqt55$iep$ :
Ajoutons bc(1) lorsque l'on veut faire des calculs avec autre chose que des entiers.
pourquoi pas dc(1) :-)
Parce qu'il n'est pas POSIX (et qu'il me fait mal à la tête).
-- Benoit Izac
yvslart
Merci les gars je l'ai fait mais autrement puisque le but en question est de calculer les secondes donc d'entrer la valeur de l'année.
Ceci est ce que j'ai fait et sa a marché: annee=$1 ((jour = annee * 365 )) ((heure = jour * 24 )) ((sec = heure * 3600 )) echo $sec
Donc maintenant je peux faire sa: lpadmin -o job-page-limit00 quota-period=$(./essai 1) ##une anné e lpadmin -A 'mail `logname`' -W 30
Avez-vous des suggestions, des commentaires?
Et pour le programme que j'ai trouvé ne vous cassez pas la tête avec je préfère en faire un que je comprends parfaitement que d'en "piquer" à quelqu'un d'autre. Merci à Cyrille et Izac.
Merci les gars je l'ai fait mais autrement puisque le but en question
est de calculer les secondes donc d'entrer la valeur de l'année.
Ceci est ce que j'ai fait et sa a marché:
annee=$1
((jour = annee * 365 ))
((heure = jour * 24 ))
((sec = heure * 3600 ))
echo $sec
Donc maintenant je peux faire sa:
lpadmin -o job-page-limit=1000 quota-period=$(./essai 1) ##une anné e
lpadmin -A 'mail `logname`' -W 30
Avez-vous des suggestions, des commentaires?
Et pour le programme que j'ai trouvé ne vous cassez pas la tête avec
je préfère en faire un que je comprends parfaitement que d'en "piquer"
à quelqu'un d'autre.
Merci à Cyrille et Izac.
Merci les gars je l'ai fait mais autrement puisque le but en question est de calculer les secondes donc d'entrer la valeur de l'année.
Ceci est ce que j'ai fait et sa a marché: annee=$1 ((jour = annee * 365 )) ((heure = jour * 24 )) ((sec = heure * 3600 )) echo $sec
Donc maintenant je peux faire sa: lpadmin -o job-page-limit00 quota-period=$(./essai 1) ##une anné e lpadmin -A 'mail `logname`' -W 30
Avez-vous des suggestions, des commentaires?
Et pour le programme que j'ai trouvé ne vous cassez pas la tête avec je préfère en faire un que je comprends parfaitement que d'en "piquer" à quelqu'un d'autre. Merci à Cyrille et Izac.
Benoit Izac
Bonjour,
le 16/01/2010 à 12:40, yvslart a écrit dans le message :
Ceci est ce que j'ai fait et sa a marché: annee=$1 ((jour = annee * 365 )) ((heure = jour * 24 )) ((sec = heure * 3600 )) echo $sec
Donc maintenant je peux faire sa: lpadmin -o job-page-limit00 quota-period=$(./essai 1) ##une année lpadmin -A 'mail `logname`' -W 30
Avez-vous des suggestions, des commentaires?
Pour moi, c'est beaucoup plus clair et surtout conforme à POSIX (relit le message de Cyrille) si c'est écrit :
# 1000 pages maximum pour une année lpadmin -o job-page-limit00 -o job-quota-period=$((365 * 24 * 60 * 60))
PS : encore un petit effort pour remplacer les « sa » par des « ça » (ça me hérisse les poils). -- Benoit Izac
yvslart
Pour le répertoire de l'utilisateur merci Cyrille parce que je ne savais pas que sa pouvait être différent donc je suppose que je vais faire ceci : REP=$(` grep " `logname`" /etc/passwd | cut -d ':' -f6 `)
et après : TAILLE=$(`du -s -k $REP | cut -f1`) if [ "${TAILLE}" -ge 1000 ] then mail -s "attention" <sujet_mail fi
Pour le man quota je l'ai lu et relu et tout ce que j'ai pu capter c'est que: -->quand quota est différent de zéro alors il y a over quota (On pourra alors utiliser sa comme condition) -->quota -p (donne la durée de temps qui reste avant qu'il soit over quota) Bon j'ai pas vraiment compris ........
Est-ce que je dois utiliser quotactl?
Pour le répertoire de l'utilisateur merci Cyrille parce que je ne
savais pas que sa pouvait être différent donc je suppose que je vais
faire ceci :
REP=$(` grep " `logname`" /etc/passwd | cut -d ':' -f6 `)
et après :
TAILLE=$(`du -s -k $REP | cut -f1`)
if [ "${TAILLE}" -ge 1000 ]
then
mail -s "attention" n...@hotmail.com <sujet_mail
fi
Pour le man quota je l'ai lu et relu et tout ce que j'ai pu capter
c'est que:
-->quand quota est différent de zéro alors il y a over quota (On
pourra alors utiliser sa comme condition)
-->quota -p (donne la durée de temps qui reste avant qu'il soit over
quota)
Bon j'ai pas vraiment compris ........
Pour le répertoire de l'utilisateur merci Cyrille parce que je ne savais pas que sa pouvait être différent donc je suppose que je vais faire ceci : REP=$(` grep " `logname`" /etc/passwd | cut -d ':' -f6 `)
et après : TAILLE=$(`du -s -k $REP | cut -f1`) if [ "${TAILLE}" -ge 1000 ] then mail -s "attention" <sujet_mail fi
Pour le man quota je l'ai lu et relu et tout ce que j'ai pu capter c'est que: -->quand quota est différent de zéro alors il y a over quota (On pourra alors utiliser sa comme condition) -->quota -p (donne la durée de temps qui reste avant qu'il soit over quota) Bon j'ai pas vraiment compris ........