Vie Sep 15, 2006 8:25 am
|
 |
monoswim
Vive para Perl en Español

|
Registrado: 18 Nov 2003
Mensajes: 720
Ubicación: Buenos Aires
|
|
| Mostrar información del sistema (Linux) |
|
|
Necesito hacer una página que muestre la información de sentencias linux como FREE que muestra el uso de la memoria...
Lo hago con system ? es seguro eso ? que me recomiendan ?
Cuales son los peligros de usar funciones del sistema ? o es mejor usar algún módulo de perl ? (si es que lo hay...)
Saludos |
|
|
|

Vie Sep 15, 2006 8:39 am
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4212
Ubicación: Valladolid, España
|
|
|
|
|
El problema de ejecutar algo vía web es que ese programa se ejecuta como el usuario que está ejecutando el servidor web. Dependerá de los permisos que le des a ese usuario el que pueda hacer más o menos.
Pero además, depende de las medidas de seguridad de tu programa a la hora de recibir los parámetros.
Como caso especial, el simple hecho de ejecutar un programa como si fuera un cgi que sólo muestra información, quiere decir que no tenemos que preocuparnos de las medidas de seguridad a la hora de pasarle argumentos, porque no los va tener. Más bien, si hubiera fallos de seguridad serían los del propio servidor web.
Yo tengo así algunos cgi de información de estado para mis clientes donde pueden ver el tamaño de su buzón y otras estadísticas. |
|
Vie Sep 15, 2006 8:54 am
|
 |
kidd
Creador de Perl en Español

|
Registrado: 15 Oct 2003
Mensajes: 1390
Ubicación: México
|
|
|
|
Vie Sep 15, 2006 9:49 am
|
 |
monoswim
Vive para Perl en Español

|
Registrado: 18 Nov 2003
Mensajes: 720
Ubicación: Buenos Aires
|
|
|
|
|
Gracias chavales, ahora veré que solución se me hace más agradable...
Saludos
PD: Lo que no mé gustó del módulo es eso de que el usuario tenga acceso al /etc/passwd |
|
Vie Sep 15, 2006 6:08 pm
|
 |
creating021
Vive para Perl en Español

|
Registrado: 23 Feb 2006
Mensajes: 498
Ubicación: Frente al monitor
|
|
|
|
|
Hola
Supongo que la página corre como root, sí no es así no importa, para saber todo lo de memoria sólo tienes que mirar /proc/meminfo.
Otra información como el cache, modelo y de más esta /proc/pcinfo
La versión esta en /proc/version
En fín ahí esta todo lo que necesitas sin usar system() o un módulo.
Saludos. |
|
Mar Oct 10, 2006 10:48 am
|
 |
monoswim
Vive para Perl en Español

|
Registrado: 18 Nov 2003
Mensajes: 720
Ubicación: Buenos Aires
|
|
|
|
|
Joder, eso me gustó, es un simple archivo...Sin usar system ni módulo...
GRACIAS CREATING021...
Saludos |
|
Mar Oct 10, 2006 1:54 pm
|
 |
explorer
Moderador

|
Registrado: 24 Jul 2005
Mensajes: 4212
Ubicación: Valladolid, España
|
|
|
|
|
| Que es justo lo que hace el módulo recomendado por kidd... |
|
Mar Oct 10, 2006 1:57 pm
|
 |
creating021
Vive para Perl en Español

|
Registrado: 23 Feb 2006
Mensajes: 498
Ubicación: Frente al monitor
|
|
|
|
|
Tambien puedes hacer un listado de los programas que están corriendo con mirar las carpetas que tiene como nombre un número (Eje. /prco/1 ) ahí hay un archivo llamado exe que es un link al ejecutable solo lees el link (readlink /proc/exe/1) y eso te dara el nombre del programa.
Con stat sabes quien lo ejecuto, si miras /proc/1/maps verás todos los recursos que usas.
Para saber que información puedes tomar de /proc solo tienes que ller el manual
man proc |
|
Mar Oct 10, 2006 2:36 pm
|
 |
monoswim
Vive para Perl en Español

|
Registrado: 18 Nov 2003
Mensajes: 720
Ubicación: Buenos Aires
|
|
|
|
|
Gracias chavales !!!
Voy a aprender bien sobre proc... |
|
Powered by phpBB © 2001, 2005 phpBB Group
|