Foros del Web » Programando para Internet » PHP »

Llamadas a lenguaje c

Estas en el tema de Llamadas a lenguaje c en el foro de PHP en Foros del Web. Bueno eh leido los topicos que hablan de estos mismos temas pero mucho enredo y no se pudo solucionar nada (de mi problema) bueno les ...
  #1 (permalink)  
Antiguo 03/09/2009, 15:26
 
Fecha de Ingreso: enero-2006
Mensajes: 9
Antigüedad: 18 años, 3 meses
Puntos: 0
Llamadas a lenguaje c

Bueno eh leido los topicos que hablan de estos mismos temas pero mucho enredo y no se pudo solucionar nada (de mi problema) bueno les cuento como va la mano con mi caso
tengo programas en lenguaje c que controlan el puerto paralelo. Tiene menu etc etc
bueno el tema es que no me sirve tanto asi.. lo que quiero hacer es tener fragmentos del programa en archivos separados por ej. programas en c con los nombres "chanel1on" y "chanel1off" entonces. con una gui en php y html evidentemente llamar a estos programas. para que se ejecuten y puedan hacer su trabajo. bueno esto no me esta funcionando y eh intentado llamar a archivos .sh para que estos llamen al programa pero aparentemente no lo ejecutan de la manera correcta.
Uno de los principales inconvenientes es que estos programas c tienen que ejecutarse en modo super usuario (root) y deben ejecutarse en consola.
Uso ubuntu (poco importa la distro)
tengo php LAMP actulizado.
eh probado con exec() y system() sin mejores resultados.
lo de la interfaz en php como se han de imaginar esta fundamentada en la posibilidad de poder administrar este sistema remotamente. desde ya agradesco su tiempo y ayuda..
  #2 (permalink)  
Antiguo 03/09/2009, 15:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Llamadas a lenguaje c

Tu mismo estas poniendo la respuesta, tienes que agregar el ejecutable de php en la lista de sudoers para poder ejecutarlos con root, si no por eso es que te falla.

Saludos.
  #3 (permalink)  
Antiguo 03/09/2009, 15:59
 
Fecha de Ingreso: enero-2006
Mensajes: 9
Antigüedad: 18 años, 3 meses
Puntos: 0
Respuesta: Llamadas a lenguaje c

Gracias por la ayuda, a que te refieres con el ejecutable de php? cual seria la sintaxis que debo agregar al archivo sudoers?

Gcias
  #4 (permalink)  
Antiguo 03/09/2009, 16:01
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Llamadas a lenguaje c

Más bien depende de como tengas instalado PHP, si esta como CGI, es al usuario bajo el que corre PHP, si esta como modulo es al usuario bajo el que corra el servicio web.

Saludos.
  #5 (permalink)  
Antiguo 03/09/2009, 21:39
 
Fecha de Ingreso: enero-2006
Mensajes: 9
Antigüedad: 18 años, 3 meses
Puntos: 0
Respuesta: Llamadas a lenguaje c

ahi si me mataste.. no esa parte no la entiendo encerio yo te cuento que mi servidor php lo instalo siempre desde el gestor de paquetes sinaptic. Ingreso en la opcion marcar paquetes por tarea y tildo servidor LAMP entonces se configura todo de una ves pero bueno si m usuario es x que tengo que poner en el sudoers?
  #6 (permalink)  
Antiguo 03/09/2009, 21:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Llamadas a lenguaje c

Tienes que poner el usuario bajo el que se esta ejecutando tu servidor web, en el caso que este PHP como modulo, que es casi lo general, pero es mejor que veas que servidor web tienes. Si lo instalas como dices seguramente es Apache, asi que busca el httpd.conf como esta configurado PHP.

Saludos.
  #7 (permalink)  
Antiguo 07/09/2009, 09:19
 
Fecha de Ingreso: enero-2006
Mensajes: 9
Antigüedad: 18 años, 3 meses
Puntos: 0
Respuesta: Llamadas a lenguaje c

Hola amigo bueno te comento lo sgt. si es Apache en debian el httpd.conf esta en blanco para configuraciones de usuario. pero bueno me fije en el apache2.conf y no encuentro nada de usuarios. tambien me fiej en los archivos incluidos en este pero no encontre nada de usuarios. supongo que el demonio se ejecuta como root.. desde ya gracias por la paciencia..
si quieres te pongo las configuraciones.
  #8 (permalink)  
Antiguo 07/09/2009, 16:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Llamadas a lenguaje c

Si se ejecuta como root entonces esta como CGI seguramente PHP, revisa bajo que usuario se esta ejecutando PHP y a ese usuario lo vas a tener que agregar en el archivo de sudoers para que puedas ejecutar el script como root.

Saludos.
  #9 (permalink)  
Antiguo 08/09/2009, 08:40
 
Fecha de Ingreso: enero-2006
Mensajes: 9
Antigüedad: 18 años, 3 meses
Puntos: 0
Respuesta: Llamadas a lenguaje c

buenas.. la verdad que busque mucho en google y no encontre por ningun lado como saber bajo que usuario se ejecuta el apache o php, bueno lo que hice fue darle permisos totales a todas las carpetas y archivos de un poryecto donde hay un un archivo shell ej (txt.sh) que contiene solamente esto "echo prueba > archivo.txt" en fin.. si lo ejecuto directamente se crea el archivo y mi usuario como propietario si lo ejecuto con php se crea el archivo pero con el propietario www-data de ahi que supongo que se esta ejecutando bajo el usuario www-data bien.. cual seria la linea que deberia insertar en el sudoers? puede ser el sgt?

www-data ALL-(ALL) ALL

gcias
  #10 (permalink)  
Antiguo 08/09/2009, 10:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Llamadas a lenguaje c

Exacto, el usuario es www-data, desconozco como agregarlo en el sudoers (eso lo puedes averiguar en el foro de Linux) pero una vez que tenga permisos para hacerlo vas a poder ejecutar tu script .sh como root.

Saludos.
  #11 (permalink)  
Antiguo 08/09/2009, 12:36
 
Fecha de Ingreso: enero-2006
Mensajes: 9
Antigüedad: 18 años, 3 meses
Puntos: 0
Respuesta: Llamadas a lenguaje c

gracias... lo voy a probar cuando tenga tiempo y si funciono lo respondo para que a alguien le sirva alguna vez.. desde ya gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:20.