Este es el comando procServ que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
procServ - Servidor de procesos con consola Telnet y acceso al registro
SINOPSIS
procServ [OPCIONES] Puerto comando argumentos ...
DESCRIPCIÓN
procServ(1) crea un entorno de tiempo de ejecución para un comando (por ejemplo, un IOC suave). Se bifurca un
el servidor se ejecuta como un demonio en segundo plano, lo que crea un proceso hijo que se ejecuta comando
con todo lo que queda args desde la línea de comando. El servidor proporciona acceso a la consola
(stdin / stdout) al proceso hijo ofreciendo una conexión telnet en el puerto especificado.
Por razones de seguridad, el acceso predeterminado está restringido a las conexiones desde localhost.
(127.0.0.1), por lo que es necesario iniciar sesión en una cuenta válida en la máquina host.
procServ se puede configurar para escribir un registro de consola de todas las entradas y salidas del niño
procesar en un archivo usando el -L (--archivo de registro) opción. Enviando la señal SIGHUP al
el servidor hará que vuelva a abrir el archivo de registro. Para facilitar el funcionamiento bajo una consola central.
gestión de acceso (como conservador), el -l (--puerto de registro) La opción crea un telnet adicional.
puerto, que es público por defecto (es decir, no restringido a localhost), y proporciona
acceso de registro de solo lectura a la consola del niño. los -r (--restringir) la opción restringe el registro
puerto a localhost, similar al puerto de acceso.
Tanto los puertos de acceso como los de registro permiten múltiples conexiones, que se gestionan de forma transparente: todos
la entrada de las conexiones de acceso se reenvía al proceso hijo, toda la salida del hijo
se reenvía a todas las conexiones de acceso y registro (y se escribe en el archivo de registro). Todos
Los mensajes de diagnóstico del proceso del servidor comienzan con "@@@" para distinguirlos claramente.
de los mensajes de proceso hijo. Un nombre especificado por el -n (--nombre) la opción reemplazará la
cadena de comando en muchos mensajes para una mayor legibilidad.
Por defecto, el servidor reaparecerá automáticamente el proceso hijo cuando muera. Para evitar
girando, se respeta un tiempo mínimo entre los reinicios del proceso hijo (predeterminado: 15 segundos,
se puede cambiar usando el --esperar opción). Este comportamiento se puede alternar en línea usando el
comando de alternancia ^ T, el valor predeterminado se puede cambiar usando el --noautorestart opción. Usted puede
reiniciar un niño en ejecución manualmente enviando una señal al proceso del niño usando el comando kill
comando ^ X. Con el proceso secundario cerrado, el servidor acepta dos comandos: ^ R o
^ X para reiniciar el niño y ^ Q para salir del servidor. los -w (--Espere) opción inicia la
servidor en este modo de apagado, esperando que una conexión telnet emita un inicio manual
comando para crear el niño.
Cualquier conexión telnet (control o registro) se puede desconectar utilizando la desconexión del cliente.
secuencia. Las conexiones de control también se pueden desconectar enviando el comando logout
carácter, que se puede especificar mediante el -x (--logoutcmd) opción.
Para bloquear los caracteres de entrada que son potencialmente peligrosos para el niño (por ejemplo, ^ D y ^ C en
IOC blandas), el -i (--ignorar) La opción se puede utilizar para especificar caracteres que son silenciosos.
ignorado cuando proviene de un puerto de acceso a la consola.
Para facilitar el inicio y la detención como un servicio del sistema estándar, el -p (--pidfile)
La opción le dice al servidor que cree un archivo PID estándar que contenga el PID del servidor.
.
El proyecto -d (--depurar) La opción ejecuta el servidor en modo de depuración: el proceso demonio permanece en el
primer plano, imprimiendo todo el contenido del registro normal más mensajes de depuración adicionales en stdout.
OPCIONES
--permitir
Permita conexiones de control desde cualquier lugar. (Predeterminado: restringir el acceso de control a
localhost.) Crea un serio agujero de seguridad, ya que los clientes telnet desde cualquier lugar pueden
conéctese al stdin / stdout del niño y ejecute comandos arbitrarios en el host, si el
permisos para niños. Debe habilitarse en tiempo de compilación (consulte Makefile). Por favor no
habilite y use esta opción a menos que sepa exactamente por qué y qué está haciendo.
--autorestartcmd=tanque
Alternar la bandera de reinicio automático cuando tanque se envía en una conexión de acceso. Utilice ^ para especificar un
carácter de control, "" para deshabilitar. El valor predeterminado es ^ T.
--tamaño del núcleo=tamaño
Establecer el máximo tamaño del archivo principal. Ver obtener límite(2) documentación para más detalles. Configuración
tamaño a 0 evitará que el niño cree archivos principales.
-C, --chdir=dir
Cambiar el directorio a dir antes de comenzar niño. Esto se hace cada vez que el niño
comenzó para asegurarse de que los enlaces simbólicos se resuelvan al reiniciar el niño.
-D, --depurar
Ingrese al modo de depuración. El modo de depuración mantendrá el proceso del servidor en primer plano y
habilita mensajes de diagnóstico que se enviarán al terminal de control.
-mi, --ejecutivo=presentar
Ejecutar presentar como ejecutable para niño. El valor predeterminado es comando.
-F, --primer plano
Mantenga el proceso del servidor en primer plano y conectado al terminal de control.
-h, --ayuda
Imprimir mensaje de ayuda.
--esperar=n
Espera al menos n segundos entre los intentos de reinicio del niño. El valor predeterminado es 15 segundos.
-I, --ignorar=caracteres
Ignorar todos los personajes en caracteres sobre conexiones de acceso. Esto se puede utilizar para proteger el
proceso secundario de caracteres de entrada que son potencialmente peligrosos, por ejemplo, ^ D y ^ C
personajes que cerrarían un COI suave. Use ^ para especificar caracteres de control, ^^ para
especifique un solo carácter ^.
-k, --killcmd=tanque
Elimine el proceso hijo (el hijo se reiniciará automáticamente de forma predeterminada) cuando tanque is
enviado en una conexión de acceso. Use ^ para especificar un carácter de control, "" para no matar
mando. El valor predeterminado es ^ X.
--killsig=señal
Mata al niño usando señal al recibir el comando de matar. El valor predeterminado es 9 (SIGKILL).
-yo, --puerto de registro=Puerto
Proporcione acceso de solo lectura a la consola del niño en Puerto. Por defecto, todos los hosts pueden
conectar a Puerto, utilizar el -r (--restringir) para restringir el acceso a localhost.
-l, --archivo de registro=presentar
Escriba un registro de consola de todas las entradas y salidas en presentar.
- sello de registro[=fmt]
Prefije las líneas en los registros con una marca de tiempo, estableciendo la cadena de formato de marca de tiempo en fmt.
El valor predeterminado es "[ ] ". (Ver --timefmt opción.)
-norte, --nombre=título
En todos los mensajes del servidor, utilice título en lugar de la línea de comando completa para aumentar
legibilidad.
--noautorestart
No reinicie automáticamente el proceso hijo al salir.
-pag, --pidfile=presentar
Escriba el PID del proceso del servidor en presentar para facilitar la integración en los
Mecanismos de administración de servicios del sistema.
--timefmt=fmt
Establezca la cadena de formato utilizada para imprimir marcas de tiempo en fmt. El valor predeterminado es "% c". (Ver
Strftime(3) documentación para más detalles.)
-q, --tranquilo
No escriba salida informativa (servidor). Evita abarrotar la pantalla cuando se ejecuta como
parte de un script del sistema.
--restringir
Restrinja las conexiones de registro a localhost.
-V, --versión
Imprime la versión del programa.
-w, --Espere
No inicie al niño de inmediato. En su lugar, espere una conexión telnet y un manual
comando de inicio.
-X, --logoutcmd=tanque
Cerrar sesión (cerrar la conexión del cliente) cuando tanque se envía en una conexión de acceso. Utilice ^ para
especificar un carácter de control. El valor predeterminado es vacío.
USO
Para iniciar un IOC suave usando procServ, cambie el directorio al directorio de inicio del IOC. A
la línea de comando típica sería
procServ -n "Mi SoftIOC" -i ^ D ^ C 20000 ./st.cmd
Para conectarse al IOC, inicie sesión en el host del IOC suave y conéctese al puerto 20000 usando
telnet localhost 20000
Para conectarse desde una máquina remota, ssh a una cuenta de usuario en procservhost y conéctese a
puerto 20000 usando
ssh -t usuario @ procservhost telnet localhost 20000
Se le conectará a la consola de IOC suave y recibirá un mensaje informativo de bienvenida.
Toda la salida del servidor procServ comenzará con "@@@" para permitir distinguirlo de
mensajes que envía su COI.
> telnet localhost 20000
Tratando 127.0.0.1 ...
Conectado a localhost.
El carácter de escape es '^]'.
@@@ Bienvenido al servidor de procesos procServ (procServ Versión 2.1.0)
@@@ Use ^ X para matar al niño, el reinicio automático está ENCENDIDO, use ^ T para alternar el reinicio automático
@@@ procServ PID del servidor: 21413
@@@ Directorio de inicio: / proyectos / ctl / lange / epics / ioc / test314 / iocBoot / iocexample
@@@ Niño "Mi SoftIOC" comenzó como: ./st.cmd
@@@ Niño "Mi SoftIOC" PID: 21414
@@@ procServ servidor comenzó en: viernes 25 de abril 16:43:00 2008
@@@ Child "My SoftIOC" comenzó en: Vie 25 de abril 16:43:00 2008
@@@ 0 usuario (s) y 0 registradores conectados (más usted)
Escriba el carácter de comando kill ^ X para reiniciar el IOC suave y obtener mensajes del servidor sobre
esta acción.
Escriba el carácter de escape de telnet ^] para volver al indicador de telnet y luego "salir" para salir.
telnet (y ssh cuando se conectaba de forma remota).
Aunque procServ originalmente estaba destinado a ser un entorno para ejecutar IOC suaves, cualquier proceso
podría iniciarse de niño. Proporciona un entorno para cualquier programa que requiera acceso.
a su consola, mientras se ejecuta en segundo plano como un demonio, y mantiene un registro escribiendo
un archivo oa través de una función de registro y acceso a la consola (como conserver).
MEDIO AMBIENTE VARIABLES
PROCSERV_PID
Establece el nombre del archivo para escribir el PID del proceso del servidor. (Ver -p opción.)
PROCSERV_DEBUG
Si se establece, procServ se inicia en modo de depuración. (Ver -d opción.)
CONOCIDO PROBLEMAS
Ninguno hasta el momento.
PRESENTACIÓN DE INFORMES LOCO
Informar errores en procServ Trac en http://sourceforge.net/apps/trac/procserv/ O al
autores.
AUTORES
Escrito por David H. Thompson[email protected]> y Ralph Lange[email protected]>.
RECURSOS
Proyecto SourceForge: http://sourceforge.net/projects/procserv/
COPIA
Todos los derechos de autor reservados. El uso gratuito de este software se otorga bajo los términos de GNU
Licencia pública general (GPLv3).
Use procServ en línea usando los servicios de onworks.net