Foros del Web » Programando para Internet » PHP »

Llamada a shell_exec: ¿problema de permisos?

Estas en el tema de Llamada a shell_exec: ¿problema de permisos? en el foro de PHP en Foros del Web. Hola, tengo varios problemas y creo que son referentes a permisos de directorios. Desde un script php quiero ejecutar un shell script, si utilizo $output ...
  #1 (permalink)  
Antiguo 06/05/2010, 09:54
Avatar de PosProdukcion  
Fecha de Ingreso: noviembre-2004
Ubicación: Manzanares el Real (Madrid)
Mensajes: 726
Antigüedad: 19 años, 4 meses
Puntos: 9
Llamada a shell_exec: ¿problema de permisos?

Hola, tengo varios problemas y creo que son referentes a permisos de directorios.

Desde un script php quiero ejecutar un shell script, si utilizo $output = shell_exec('ls -l'); funciona y recoge la salida correctamente.

Si hago $output = shell_exec('ls -l > directorio/lista.txt'); también funciona, escribe un fichero en directorio que tiene permisos 777.

Sin embargo, si creo un shell script que contiene 'ls -l' o 'ls -l > directorio/lista.txt' no hace nada, pero tampoco salta ninguna excepción, el fichero test.sh también tiene permisos 777. $output = shell_exec('./test.sh');

¿Sabéis cuál puede ser el problema?

Bueno, ese es el primero de los asuntos. El otro es un problema más relacionado con el servidor, pero lo pongo en el mismo post ya que el otro sí parece de php:

Si la carpeta www tiene permisos 775, cualquier php que intente ejecutar en ese servidor me dice:

Internal Server Error
Directory "/home/ovh/www" is writeable by group


Si pongo permisos 755 los scripts php funcionan correctamente, pero me quedo sin acceso de escritura para el usuario ftp, lo puedo solucionar haciendo owner de la carpeta www al usuario de ftp, pero ¿sabéis como puedo solucionarlo? ¿Es poco recomenable hacer owner de la carpeta www al usuario de ftp?

Gracias
  #2 (permalink)  
Antiguo 06/05/2010, 10:01
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Llamada a shell_exec: ¿problema de permisos?

mm la ruta del archivo esta bien ? ./test.sh
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 06/05/2010, 23:03
Avatar de PosProdukcion  
Fecha de Ingreso: noviembre-2004
Ubicación: Manzanares el Real (Madrid)
Mensajes: 726
Antigüedad: 19 años, 4 meses
Puntos: 9
Respuesta: Llamada a shell_exec: ¿problema de permisos?

Sí, la ruta es correcta, también he probado con $output = shell_exec('./scripts/test.sh'); y nada
  #4 (permalink)  
Antiguo 12/05/2010, 05:53
Avatar de PosProdukcion  
Fecha de Ingreso: noviembre-2004
Ubicación: Manzanares el Real (Madrid)
Mensajes: 726
Antigüedad: 19 años, 4 meses
Puntos: 9
Respuesta: Llamada a shell_exec: ¿problema de permisos?

Ok, asunto resuelto.

El problema era que el fichero sh, al escribir, toma como directorio actual aquel donde esté el php, no el propio shell, es decir, si el shell ahce esto:

Código unix:
Ver original
  1. ls -l > ./lista.txt

el directorio ./ será aquel donde esté el php
, no el propio sh

Saludos

Etiquetas: permisos, shel_exec
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 15:38.