-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-04-21 a las 23:45 +0200, Camaleón escribió:
El 21/04/07, Carlos E. R. escribió:
En realidad, cualquier proceso lo bastante maleducado puede echar abajo el sistema, si el sistema es tan amable de darle todos los recursos que pida.
Le da recursos y además le permite generar subprocesos independientes.
Lo normal.
Hace poco el kbabel empezó a comerme memoria, y cuando me dí cuenta llevaba ya giga y pico, tirando de swap, con lo que el sistema respondía muy lento. Me costó lo suyo matarlo. Y si no me doy cuenta, se cae todo.
En el caso de kbabel puedes identificar el proceso y matarlo,
Claro, porque era un accidente, y porque yo soy tan bestia que tengo puestos seis gigas de swap para un sólo giga de memoria. Si hubiera hecho lo que mucha gente que ni ponen swap se me habría caído el sistema antes de darme cuenta, porque lo ví al giga y medio y lo paré cuando iba por dos o más.
pero ¿cómo identificas esos procesos que se generan (alguna característica que los haga únicos o identificables a parte de que se ejecutan como el usuario que ha ejecutado la función) y los terminas? ¿Es posible matar varios procesos de golpe con "kill"?
En el caso del ejemplo, todos se llaman ":", por lo que se les podría controlar con killall un poco. Necesitarías lanzar cientos de "killall \:" por segundo.
El de este caso sucede porque el bash permite definir funciones en la propia linea de comandos, es decir, su propia potencia es su peligro...
Una buena razón para limitar la cantidad de usuarios del sistema con acceso a shell.
A veces sí, a veces no. Depende de para que sea el sistema. Si es un servidor de correo, pues cuando menos mejor. Si es un servidor de compilaciones, pues todos los desarrolladores necesitan acceso. Si es en una intranet, pues si se cae será por accidente y no pasa nada. Si lo pones en internet, pues se toman más precauciones (a sourceforge le pasa eso, y quizás al buikdservice de suse, no se). No es nada nuevo... - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFGKpuAtTMYHG2NR9URAl9zAJ4pgQnLemh+kL/pK7c9Dff973ky6wCgjAyD Gp59cNyn5AWb6yVjpDb8ho4= =CTxI -----END PGP SIGNATURE-----