[Ayuda] Linux Script (Auto-start si Screen se cierra)

Iniciado por venadHD, 26 Enero 2015, 21:14 PM

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

venadHD

Necesito un script, que auto inicie un servidor cuando este se cierre, es decir, la screen se destruya

lo estoy iniciando con:
screen -S xServer ./x-server

Pero, el script que estoy pensando auto - iniciaria el servidor de nuevo si se cierra la screen

Gracias por leer :D

engel lex

olvida los "requests" aquí... aprende y lo haces tú! el foro es para resolver dudas... en caso que quieras aprender el tema queda abierto
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

venadHD

#2
Intentare aprender cosas basicas de linux, y crear almenos una cierta parte del script. No se absolutamente nada de Linux, (Solo se algo de LUA, y miré asi por encima PHP, HTML, JAVA, SQL, MySQL, pero no aprendi ninguno)

Luego comento! :D

PD: Poco a poco, ire programando aqui lo que vea y aprenda

#!/bind/bash
function autostart {
name = venad
a = screen -r $name

if [ a == "There is no screen to be resumed matching $name" ] then
# screen -S venad ./mta-server
echo "No hay ninguna screen llamada 'venad'"
fi
}
autostart


PD: ./script.sh: line 9: syntax error near unexpected token `fi'
./script.sh: line 9: ` fi'

Como puedo hacer para "Comprobar si una "screen -R" existe o no? :/

Lo mas parecido que encontre fue
export GTA_PATH=/home/sampsvr
cd $GTA_PATH
while [ true ]; do
cat {$GTA_PATH}/server_log.txt >> {$GTA_PATH}/full_server_log.txt
rm {$GTA_PATH}/server_log.txt
touch {$GTA_PATH}/server_log.txt
./samp03svr
done

Que se supone que inicia un servidor distinto al que yo comento.

engel lex

Citary miré asi por encima PHP, HTML, JAVA, SQL, MySQL, pero no aprendi ninguno
los lenguajes requieren atención y por lo menos un día de esfuerzo para intentar aprenderlos... siendo PHP uno de los más faciles

la primera linea
Citar#!/bind/bash

para saber cual debe ser la correcta escribe en la consola
Código (bash) [Seleccionar]
which bash
y te dirá una ruta... ej (en mi caso) /bin/bash

entonces se lo indicas al documento
Código (bash) [Seleccionar]
#!/bin/bash

luego las igualaciones como las de linea 3 y 4, las igualaciones no deben llevar espacios

de resto screen no se para que es o cual es su sintaxis...

pero para redirigir la salida de screen a "a" se hace
Código (bash) [Seleccionar]
a=$(screen -R $name)

el if antes de then la condicion termina en ;

el function no funciona así... debes usar como en el de abajo while[true] y recomiendo sleep 1 al final para que el script no te consuma el procesador

no voy a hacer el script (porque este lugar es para aprender, así que debes hacerlo tu y porque igual no se los detalles de tu sistema para saber que debo esperar o no)
así que si estás dispuesto a aprender, aquí estamos
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

venadHD

#4
hmm, en la Wiki de Elhacker.net no aparece bash, algun sitio donde pueda aprenderla?
Te dejo aqui la informacion, era un error mio, me di cuenta luego, "bind > bin"

Datos tecnicos del Servidor

Tipo: VPS (Servidor remoto)
OS: Debian 6.0_x86
Bash: #!/bin/bash
ejecutor: root (chmod 777 en los archivos)

engel lex

mi respuesta puede sonar odiosa pero realmente no te puedo dar una respuesta más rica que esta

https://www.google.co.ve/search?q=tutorial+bash
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

venadHD

Varias preguntas para no plantearlas en 3401 posts en el mismo tema:

1. ¿Que diferencia tiene "Bash" de "Sh"?
/bin/sh
/bin/bash
2. Ayer vi un popup de este foro diciendo que habia una app de movil para postear, ¿Cual es?, ¿Sirve TapaTalk

engel lex

realmente es algo que nunca le había prestado atención pero describen como

CitarWhat is sh

sh (or the Shell Command Language) is a programming language described by the POSIX standard. It has many implementations (ksh88, dash, ...). bash can also be considered an implementation of sh (see below).

Because sh is a specification, not an implementation, /bin/sh is a symlink (or a hard link) to an actual implementation on most POSIX systems.

What is bash

bash started as an sh-compatible implementation (although it predates the POSIX standard by a few years), but as time passed it has acquired many extensions. Many of these extensions may change the behavior of valid POSIX shell scripts, so by itself bash is not a valid POSIX shell. Rather, it is a dialect of the POSIX shell language.

bash supports a --posix switch, which makes it more POSIX-compliant. It also tries to mimic POSIX if invoked as sh.

basicamente sh es el sistema base, bash se hizo como una implementacion compatible con sh, pero bash agregó tantas extensiones que dejó de ser posix compatible XD

en pocas palabras mucho lenguaje tecnico, y son 2 cosas iguales pero diferentes XD realmente no estoy seguro con eso...



si, la aplicación movil para el foro es tapatalk
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

venadHD

Y "POSIX" quien es o que es?
Tu sueles navegar en pc o movil?
Podrias darme alguna comunicacion directa contigo sin ser el foro?

engel lex

sobre poxis google XD

yo navego en pc cuando puedo pero si navego en movil, lo hago por navegador porque me gusta más (y se me hace más facil moderar)

comunicación conmigo, aquí en el foro por mensaje privado XD creeme estoy más por aquí que en cualquier otro lugar (facebook o aplicaciones de chat) los mp me llegan directo al correo así que lo veo en el cel cuando me escriben
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.