ulimit -St
Le
Thomas
bonjour :-)
je croyais m'être garanti contre les plantages en boucle infinie avec ce
code là :
while true; do
(
ulimit -St 100
chemin/SSHKeychain || exit "$?"
)
sleep 60 || exit "$?"
done
mais aujourd'hui, je me retrouve avec un processus planté, et le script
qui tourne en boucle en disant "SSHKeychain already running"
il doit bien y avoir un processus qui s'est terminé, pour que le script
se mette à tourner,
mais ce n'est ni le père (je continuais de m'en servir), ni le processus
planté
je m'attendais à ce que "ulimit -St" fasse que le processus planté se
termine, et aucun autre
qqn a une idée du pb et/ou d'une solution ?
--
Téléassistance / Télémaintenance
http://www.portparallele.com/ThomasDECONTES/
je croyais m'être garanti contre les plantages en boucle infinie avec ce
code là :
while true; do
(
ulimit -St 100
chemin/SSHKeychain || exit "$?"
)
sleep 60 || exit "$?"
done
mais aujourd'hui, je me retrouve avec un processus planté, et le script
qui tourne en boucle en disant "SSHKeychain already running"
il doit bien y avoir un processus qui s'est terminé, pour que le script
se mette à tourner,
mais ce n'est ni le père (je continuais de m'en servir), ni le processus
planté
je m'attendais à ce que "ulimit -St" fasse que le processus planté se
termine, et aucun autre
qqn a une idée du pb et/ou d'une solution ?
--
Téléassistance / Télémaintenance
http://www.portparallele.com/ThomasDECONTES/

Poser une question


Salut,
Une idée: les parenthèses sont de trop; ou alors il faut tester le
code de sortie du sub-shell:
while :; do (ulimit ..; /chemin/commande || exit $?) || exit $?; done
Mais essaye sans '()', dont la raison d'être me saute pas aux zieux...
--
christophe.
ah oui tiens, ça m'a échappé ...
mais tu crois que c'est ulimit qui fait une erreur ?
dans ce cas là ça n'aurais pas exécuté SSHKeychain, si ??
c'est pour que le ulimit ne soit appliqué que à SSHKeychain, et pas au
script courant (qui fait une boucle)
--
Téléassistance / Télémaintenance
http://www.portparallele.com/ThomasDECONTES/
Aucune idée !..
Ah bah si.. ça continue en séquence.
Pour t'en assurer: ulimit xxx || { echo pb avec ulimit; exit 1 }
Yep. Mais un sleep et un fork, meme dans une boucle, d'ici que ca te
pompe 100 sec-cpu..
Par contre, si tu mets une limite à SSHKeychain (il a peut-être
besoin de faire des calculs, non ?), faut pas s'étonner si il
sort sauvagement !?
--
christophe.
j'ai rajouté ce test et relancé,
en tout cas il ne fait pas d'erreur habituellement
ok
mais à l'inverse, je ne vois pas comment ce sous shell peut être la
cause de mes ennuis ...
je ne m'étonne pas qu'il sorte sauvagement,
au contraire, je vois qu'un de ses processus fils a buggé avec une
boucle infinie, et que lui, justement, n'a pas terminé au bout des 100 s
...
pourtant c'est une propriété qui est héritée, non ?
--
Téléassistance / Télémaintenance
http://www.portparallele.com/ThomasDECONTES/
Thomas
bon, ça devait être un bug très particulier avec le shell,
parce que aujourd'hui, nouveau plantage en boucle infinie,
le processus planté s'est bien terminé au bout de 100 s, et le script
n'a pas fait un tour de boucle :-)
--
Téléassistance / Télémaintenance
http://www.portparallele.com/ThomasDECONTES/