Sobre un medio año después de mi último anuncio en DreamBox seguimiento de mi sitestemata que puedo anunciar nuevos y probablemente una de las últimas versiones de Nuki. Версията беше готова още преди 2 meses de pereza pero donde donde las cosas son para la depuración con el anuncio de pozabaviha. Desde unos pocos días trabajando en 32 DreamBox 500-s y los resultados son muy buenos. Los cambios son muy – quitado es el idiota según la Linux servidor transferencia de registros – Ahora necesita tener apache + php, porque el nuevo sistema para escribir registros debe enviar parámetros a un script php en el servidor. Cambié el script sin la parte del servidor – Si usted tiene algunos receptores de satélite no tiene sentido que pongas un servidor desde el que tomar la información por lo que puedo mover el script hardkodnato con 2 información variable para CAM-. También he declarado una variable adicional para depurar – Si no desea que los registros de no arrojar – otra vez se retardó brecha que previamente se hicieron popraviki luz de 🙂 en el código, Parecía escrito por polugramoten retard (no que yo no soy de). Ostrane nos 2 errores críticos a la terminación de la obra de la secuencia de comandos en algún momento al azar, otra vez oligofrenski omisiones de mi parte. Generalmente la escritura simplemente no tuvo que considerar como personas, que busybox y ceniza no son cosas fáciles para la domesticación. Esta vez creo que ahorrar gran diatriba con el código y explicar qué variables para lo que es y qué tratamientos se pueden hacer con ella (Nuevo) 🙂

SERVER="192.168.100.1"
 STANDALONE="FALSE" #using like stand alone app no server side depends ; )
 HCAM1="" ## if starting like stand alone app give me CAM namezzz if HCAM1 is empty its means chanel is free
 HCAM2="" ## CAM2 name
 PORT="666" # port rockzzz : D : )))))))))))))))))
 IP=$(ifconfig eth0 | grep inet | awk '{print $2}' | sed -e '[email protected]:@@')
 FILE='/tmp/debug'
 INFO='/tmp/info_file'
 NC=$(which nc)
 WGET=$(which wget)
 MAX_DAYS="10"
 TIMEOUT="600"
 MAX=70 #max cpu usage per process
DEBUGING="TRUE" #if u wanna script send debug information set DEBUGING to TRUE if SEVERLESS is set to true this var will be skiped
 NEWDBGSTYLE="TRUE" #debuging new style sending info to apache derectly, old style using nc

Obviamente promenliviti nombres hablan por sí mismos pero lo suficiente aunque y me refiero a alguna palabra inteligente.

INDEPENDIENTE es una de las más importantes variables es TRUE si el setnata no va a hacer llamadas al servidor y no requiere ya según el servidor si lo usas tienes que poner los siguientes valores y HCAM1 (No sé por qué lo nombré así no recuerdo ahora pero no importa). Si no hay ningún valor real y es un skritpa de secuencia de comandos independiente asumiendo que va a trabajar en sin codificar canales y no hay ningún tipo de verificación para el módulo de descifrado, Si se pondrá a prueba según el valor especificado. HCAM2 opcional si solo usas el módulo decodificador 1 Digamos por ejemplo proceso de CCcam.

DEPURACIÓN la segunda prlûe variable interesante o callar según información depende de qué valor que se cerró de golpe. Avotmatično pasa un corte si INDEPENDIENTE es cierto

NEWDBGSTYLE proyecto de una importante variable. Transferirá los logs en el servidor. Si la voluntad verdadera es la nueva forma sin idiostkata según netcat. Si aún así mantenga el viejo método poner FALSE. En General, estas son las cosas necesito foco pero creo, Aunque los cambios son radicales una idea seguirá siendo transparente para el 🙂 de los valores de predeterminado especificado

Definitivamente estoy muy contento con cómo trabajar hacia fuera – la secuencia de comandos se convirtió suficientemente flexible otpdnaha idiotkite según archivos adicionales para características como otpdna ya y creo que según la nc o la necesidad de un servidor, etc. de que no todo el mundo goza 30+ que un servidor o tenga un router de un cuadro de un. Todavía tiene mucho que mejorar pero por ahora creo que voy a abstenerse de las cosas porque takvia no es necesario 🙂

Como archivos generalmente se encuentran en Directorio а крипта за въвеждане на логовете може да свалите от aquí

И по случай добрия скрипт едно ускорено парче за всички ускорители 😀

Mejorado por Zemanta

De casi un año estaba trabajando en mi demočeto NUKI. Hoy tengo tiempo para arreglar las cosas porque había un montón de cosas que no estaban muy bien. He añadido un poco de nueva funcionalidad. Cambiado el código, con más funciones y en corto llegó a ser más fácil de usar.

La principal novedad que puse una trampa de señal-. En algún momento mientras gira el receptor de dreambox demonio decide matarlo y así dejar de monitorear mi proceso, que en sí mismo es un momento desagradable. Y no hay ninguna manera de averiguar lo que está sucediendo porque el lugar es un poco de suciedad y registros deben hacer hacer patrones complejos de recursos compartidos de red que no desea tratar. En general las líneas de señal trampa-es una característica agradable de scripts bash para interceptar las señales de las salidas o las presentadas a ellos el núcleo a través de un 😉 de matar-dice y así podemos evitar algunos de los acontecimientos inmediatamente posteriores. Damn eso SIGKIL o matar -9 no puede ser prehvanat y prevenir, es el diseño de la base. Terminó directamente presentado su PID. Y ahora el código de error

#trapping signals I know -9 dosent work but we try it just in case ; )
trap on_exit 0 14 1 2 9 13 15 6 8 4 3 11 5
on_exit () {
make_debug 10 #unexpected error
#reboot now if we hawe trapped signal
reboot -d 0
exit 0
}

La primera línea declara a los Estados Unidos en cuanto a la acción a tomar y en qué alertas nos leerá más acerca de alertas señales de hombre en el caso de estos 😉 me importa. Como se puede ver el resultado en un simple funkciika que permite depurar aplicaciones de mensajes y reiniciar el receptor. Yo no estoy convencido, conducirá a los resultados que esperaba, porque creo que todo lo que está matando con kill -9 pero nada impide que para tratar de.

Otros cambios son las características cardinales mayoría de las cosas que se repite por el código de llenarlos en funciones, Es un poco feo no, ahora eso es bueno, tuve un drama de 😉 con una vuelta en bash- – Puse a mi regreso en una de las funciones y espera que el comportamiento como todos los demás lenguajes de programación familiar, pero resultó valores enteros sólo vuelta y regresa a un máximo de 2 😀 y quería devolver la cadena. Había un cerdo feo. La solución es simple

#---cuted---

if [ $T -eq $N ]
 then
 echo "Cam is down! Reboot..."
make_debug 4 # cam is down
 else
echo $rcam
 fi

# ---cuted----

#finding real cam1
 rcam1=$(find_cam $cam1)

La primera parte es el final de mi función y echo el resultado de la victoria. Su toma de decisiones es sencilla con la última línea en el paso anterior.

Hmmm creo que, esa es la parte interesante del código.

Quiero expresar mi gratitud a la 😉 de inspiración

http://www.youtube.com/watch?v = SilMJ0O13UI&función = relacionadas

La mayor parte- Finalmente he podido terminar su trabajo en el guión que escribo tanto tiempo ya 🙂 NUKI es uno script muy estable. Hago hincapié en 1 porque tomé la escritura alternativa, he plantado en los principales. Ya adquirió estructura monolítica, pero personalmente creo que es mejor para un demonio versión 🙂 ahora las mejoras no son muy, más fiksove de errores varios y pequeños intentos de mejorar el código. Lo tangible sólo que agrego es comprobación de tiempo de actividad del receptor. Puse en cada 10 días para hacer un reinicio solo.

Miro hacia atrás, y creo que mi idea inicial para un script que simplemente controlar receptores de lo que sucede con ellos, que soy lo suficientemente buena idea realizado muchos múltiplos. El único error que espero para evitar con 10 reinicio diario – Hay momentos en que el receptor comienza a reiniciar, pero no puede. Mata más reparar tiendas incluyendo la red pero incapaz de llegar a la puesta a cero. Desafortunadamente debido a las limitaciones impuestas por nemožâh mis cajas para hacer el reinicio del núcleo y así evitar este momento. Tal vez algún día en el futuro vas a compilar mi propia imagen para plumas y así ser capaces de lidiar con este problema. Nadâvma para mi decisión final es brillante sobre él 🙂 o nada más llegar muy bien, incluso mucho mejor que mi intención original. Especialmente en una situación, preimana a través de la metamorfosis que. La parte de web interfeisa de b″gavata estancia, que ha por qué seguir no lo da 😆 desde se sentó abajo a reescribirla en el próximo par de días conseguirá le para el libre consumo. Palabras finales – en vez de que no sólo quiero agradecer a todos mis amigos, Soporté mi preguntas estúpidas acerca de – tiene una importante contribución a la deizaina del código. Reconocimiento de humanos vale la pena y que se llama proyecto y ha sido mi inspiración en más momentos de aburrida escribiendo 🙂 … Dar te lo mereces!

Hoy he trabajado un poco más de los nuevos versos NUKI. Por último puesto orden a su, y lo arreglo poco antes de que él lanzó la última estable, y la versión definitiva, probablemente,. Así que tuve la idea para comprobar cuántos días el tiempo de actividad del receptor, Hago la mayor parte de mis problemas han sido más tiempo, así que decidí hacer en 10 días prfilaktichen un reinicio. Me garabateada en konveirche donde mi despeja el día de otras variables ya que el resultado es bastante el tiempo de actividad otkomandata trabajo desagradable

# uptime
12:13:57 up 30 days, 20:07,  1 user,  load average: 0.00, 0.00, 0.00

Así que la línea se filtra solamente por superskiâ konveir 😛

uptime | awk -F'up' '{ print $2 }' | awk -F'days' '{ print $1 }'

Como si el tiempo es de días como resultado un número entero de días, y si es similar a la rezulatatt

[email protected]:~$ uptime | awk -F'up' '{ print $2 }' | awk -F'days' '{ print $1 }'
1:34,  5 users,  load average: 0.46, 0.39, 0.41
[email protected]:~$

Que pasa a través de la verificación para el tipo del valor

if echo $days | grep "^[0-9]*$" > /tmp/null
then
   echo "Uptime in days is $days"
else
  echo "Uptime isnt in days"
fi

A fácil y sencillo en la estructura si-entonces comprueba si stoisnota contiene sólo números con expresión regular grep “^[0-9]*$”.

Así que ha sucedido ha NUKI 1.0 🙂 por eso de la versión 0.6 Salté de la 1.0 se bien muy sencillo me pides – Ya tenemos una 100% Universal que cubre todos los requisitos de NUKI, con algunas excepciones como fiksna en el futuro y lo más importante de esta versión se realiza de una manera radicalmente diferente. Volví a mi vieja idea de un demonio y un poco de ensayo y error este tiempo cosas salió bastante grande. La aplicación de servidor es completamente desmembrada, además de un script de php corto del que toma su 🙂 información-NUKI

Es ya casi todo con NUKI alcanzado donde más? Bien para ser honestos co. siempre puede y más, Consideremos, por ejemplo, hacer que el script instalador decir hacer las cosas un poco más fácil y comprensible incluso para el usuario de Linux que no todo sucede como sea posible- algunos problemas para el usuario. Pero para todo hay una temporada. Al tiempo el NUKI aparte de cualquier otra cosa dobavail módulo que controla la conexión al servidor, Si desaparece los reinicios de receptor. Por el momento que aún no he determinado si la obras hihihiihh 😆 Abe en su conjunto tendrá siempre mucho que desear todavía o una idea nueva de algunos sin embargo un capítulo no puede pensar como 2-3-4 o más, incluso mi 😈

PS otra vez versión codenamed. Creo que ya tengo una base muy sólida para todos en el futuro decides que hacer con mi script