Ejecutar script que nesecita SUDO al inicio del systema

Iniciado por locot3, 16 Septiembre 2010, 12:21 PM

0 Miembros y 1 Visitante están viendo este tema.

locot3

Buenas y gracias por el tiempo ! ,bueno como dice el titutlo estoy intentando haveriguar como hacer para ejecutar un script que nesecita SUDO al inicio del systema, osea mi comando cuando estoy como root es >
sudo ./comando start 9991
nesecito pasar los 2 parametro start y el 9991 que algo de un puerto ,, ya intenta con hacer un script .sh asi
#! /bin/bash
sudo /carpeta/./comando start 9991
tambien asi
#! /bin/bash
/carpeta/./comando start 9991
#chmod +x script.sh
y despues en el archivo rc.local puse esta linea
sh /etc/init.g/script.sh

pero no pasa nada el comando me pide SI o SI ser ejecutado como root , mi server esta en un hosting remoto osea que solo tengo acceso de ROOT pero via SSH y no fisico y cada ves que lo reinician tengo que ejecutar TODOS mis comandos otra ves ,, PORfavor si alguien puede ayudarme se lo agradeceria mucho !! gracias por el tiempo !!

j4np0l

Si querés que el script se ejecute al inicio, ubicalo en el siguiente directorio:

/etc/init.d/

Después asegurate de que el el propietario sea el root:

sudo chown root:root /etc/init.d/nombre_del_script

Y que tenga permisos de ejecución:

sudo chmod 755 /etc/init.d/nombre_del_script


Saludos! Espero que te sirva.

locot3

Buenas y GRACIAS la solucion hice todo lo que me dijiste y me Funciona a "Medias" con esto quiero decir lo siguiente mi script constra de 2 Instucciones :

#! /bin/bash
tar zxvf /directorio/file.tar.gz (descomprime file en directorio /file/ ) Funciona !
/file/./file start 9991 (Intento iniciar el programa)  PEro no paso NADA aca !

tambien intente asi :

#! /bin/bash
tar zxvf /directorio/file.tar.gz (descomprime file en directorio /file/ ) Funciona !
sudo /file/./file start 9991 (Intento iniciar el programa)  PEro no paso NADA aca !

el primer comando extraer con tar losarchivos en el directorio "/" y cuando Reinicio EFECTIVAMENTE el comando funciono y el directorio EXISTE !, pero el segundo comando para ejecutar el archivo el que nesecita "sudo" no funciona !!, talves falto algo con el rc.local ? o no se porfavor AYUDAA !!! y muchas gracia spor la Respuesta  :D

Foxy Rider

¿ /file/file tiene permisos de ejecución ?
verificá corriendo tu script desde una consola cualquiera como root para ver que salida da la ejecución del segundo comando ...

Saludos.

P.S : el sudo es innecesario, ya estás corriendo como root ^^

locot3

graciax por la respuesto pero lastimosamente no es ese el problema porque cuando ejecuto mi script con el comando sudo osea :

sudo /file/file.sh (Corre ala perfeccion)

Gracias de todas maneras, alguna otra sugerencia ????? :(

j4np0l

#5
Proba modificando el script de esta manera:
#!/bin/bash
tar zxvf /directorio/file.tar.gz
/file/file.sh start 9991


Fijate que fuera del script lo corres como /file/file.sh, mientras que dentro del script lo estas llamando con el ./ en el medio, este creo que es tu error.

También, si file es un script, podés declararlo como función dentro del script de inicio o simplemente copiar todo lo que hace después del tar  :P

Saludos

locot3

MUCHAS HGRACIAS a todos , provnado correr el script desde consola me di cuenta que TODO estaba bien solo que al ejecutar mi programa al llamar el sudo el programa nesecitava ser ejecutado desde ruta ABSOLUTA osea desde "/" en este caso solo tuve que hacer descomprimir los archivos en "/" y listo :D otra ves MUCHAS GRACIAS a todos !!!!