• Saltar al contenido principal
  • Skip to secondary menu
  • Saltar a la barra lateral principal
  • Saltar al pie de página
  • Inicio
  • Secciones
    • Ciencia de datos
    • Criptografía
    • Herramientas
    • Machine Learning
    • Noticias
    • Opinión
    • Productividad
    • Programación
      • JavaScript
      • Julia
      • Matlab
      • Python
      • R
  • Programación
    • JavaScript
    • Julia
    • Matlab
    • Python
    • R
  • Laboratorio
    • Estadística
      • Calculadora del Tamaño Muestral en Encuestas
      • Calculadora de estadísticos descriptivos
      • Test de normalidad
      • Calculadora de contrastes de hipotesis
      • Calculadora de tamano del efecto
      • Simulador de Regresión Lineal con Ruido
      • Visualizador de PCA
      • Visualizador de Series Temporales
      • Simulador de Regresión Logística
      • Simulador de K-Means
      • Simulador de DBSCAN
      • Detector de la Ley de Benford
      • Ajuste de Curvas
      • Calculadora de Matrices
    • Probabilidad
      • Calculadora de Probabilidad de Distribuciones
      • Calculadora de Probabilidades de Lotería
      • Simulador del Problema de Monty Hall
      • Simulador de la Estrategia Martingala
    • Finanzas
      • Calculadora de Préstamos e Hipotecas
      • Conversor TIN ↔ TAE
      • Calculadora DCA con ajuste por inflación
      • Calculadora XIRR con Flujos Irregulares
      • Simulador FIRE (Financial Independence, Retire Early)
    • Negocios
      • CLV
      • Scoring
    • Herramientas
      • Formateador / Minificador de JSON
      • Conversor CSV ↔ JSON
      • Comparador y Formateador de Texto y JSON
      • Formateador y Tester de Expresiones Regulares
      • Inspector de JWT
      • Generador y verificador de hashes
      • Codificador / Decodificador Base64 y URL
      • Conversor de bases numericas
      • Conversor de Timestamp Unix
      • Conversor de colores
      • Generador de UUIDs
    • Juegos
      • Tres en Raya
      • Nim con Q-Learning
    • Más
      • Método D’Hondt
      • Generador de Contraseñas Seguras
  • Noticias
  • Boletín
  • Contacto
  • Tienda
    • Libros
    • Equipamiento de oficina
    • Equipamiento en movilidad

Analytics Lane

Ciencia e ingeniería de datos aplicada

  • Ciencia de datos
  • Machine Learning
  • IA Generativa
  • Python
  • Pandas
  • NumPy
  • R
  • Excel

Cómo configurar un servicio en Windows

mayo 11, 2022 Por Daniel Rodríguez Deja un comentario
Tiempo de lectura: 7 minutos

Ventana principal de NSSM

Los servicios de Windows son programas que funcionan en segundo plano sin la necesidad de que un usuario los ejecute. Un concepto similar a los Daemon de los sistemas UNIX. Siendo posible configurarlos para que se inicien al arrancar el sistema, cuando se produce un evento o dejarlos configurados para que sea un usuario quien los ponga en marcha. Los servicios, al igual que los Daemom en UNIX, son una parte clave del sistema operativo Windows existiendo decenas de estos ya que permiten realizar tareas automáticamente sin que un usuario tenga que estar conectado. Configurar un servicio en Windows suele ser algo complicado con las herramientas que vienen por defecto, pero para solucionar este problema se puede recurrir a NSSM (the Non-Sucking Service Manager).

Tabla de contenidos

  • 1 Instalación de NSSM
  • 2 Configurar un servicio en Windows mediante la GUI
    • 2.1 Application (Aplicación)
    • 2.2 Details (Detalles)
    • 2.3 Log on (Inicio de sesión)
    • 2.4 Dependencies (Dependencias)
    • 2.5 Process (Procesos)
    • 2.6 Shutdown (Apagado)
    • 2.7 Exit actions (Acciones de salida)
    • 2.8 I/O (Entrada/Salida, E/S)
    • 2.9 File rotation (Rotación de archivos)
    • 2.10 Environment (Entorno)
  • 3 Configurar un servicio en Windows mediante la línea de comandos
  • 4 Conclusiones

Instalación de NSSM

Antes de poder crear un servicio con NSSM en primer lugar es necesario descargar el programa. Lo que se puede hacer desde la página web del proyecto. Al descargarlo se obtiene un archivo ZIP con el código fuente, una versión compilada para sistemas Windows de 32 bits y otra para los 64 bits. Afortunadamente el programa no requiere instalación, solamente será necesario seleccionar el archivo EXE más adecuado para nuestro sistema y ejecutar esta.

Configurar un servicio en Windows mediante la GUI

Para crear un nuevo servicio con nssm solamente hay que acceder a la ruta donde se descargó el programa y acceder a la carpeta con el compilado correspondiente a la versión del sistema operativo con el que se está trabajando. Ejecutando en la esta carpeta el siguiente comando

La caverna del consumo, o cómo Greenspan miraba calzoncillos para hacer política monetaria – El bestiario de los indicadores económicos absurdos (parte 1)
En Analytics Lane
La caverna del consumo, o cómo Greenspan miraba calzoncillos para hacer política monetaria – El bestiario de los indicadores económicos absurdos (parte 1)

nssm install <servicename>

donde hay que reemplazar <servicename> por el nombre del servicio que se desea configurar. Habitualmente Windows pedirá confirmación para modificar la configuración del sistema con este programa, lo que se deberá hacer con unas credenciales de administrador. Una vez confirmado que deseamos modificar la configuración del sistema aparecerá una ventana como la siguiente.

Ventana principal de NSSM
Ventana principal de NSSM

Ventana que cuenta con 10 pestañas para configurar las diferentes opciones del servicio, las cuales se explican a continuación.

Publicidad


Application (Aplicación)

La pestaña Application es la única hay que completar en todos los casos, dado que es la que contiene la configuración básica del servicio. En esta se define la ruta donde se encuentra el programa, la carpeta en la que se ejecutará y las opciones que se le han de pasar el servicio. Lo que se debe indicar en los diferentes campos del formulario:

  • Path: la ruta al programa que se desea ejecutar como servicio.
  • Startup directory: la ruta donde se ejecuta el servicio, esto es, la carpeta en la que por defecto podrá leer archivos de configuraciones y guardar logs.
  • Arguments: el listado de parametres que se le pasará al servicio cuando se ejecute.

El campo Path puede ser un algo confuso, ya que es la ruta al programa ejecutable. Cuando se crea un servicio en Python no se debe indicar la ruta al script, sino que la ruta al intérprete de Python. El script con el programa se deberá pasar en el campo Arguments. Si se ha indicado la carpeta donde se encuentra los archivos de script en Startup directory, solamente será necesario indicar el nombre del archivo en Arguments.

Details (Detalles)

La segunda pestaña sirve para darle un nombre y una descripción al servicio. Quizás el punto más importante de esta es si se desea que el servicio se inicie de forma automática o no. Aunque esto se puede cambiar posteriormente.

Pestaña Details de NSSM
Pestaña Details de NSSM

Log on (Inicio de sesión)

En la pestaña Log on se puede seleccionar la cuenta de usuario que ejecutará el servicio. El propio nssm comprobará automáticamente si la cuenta indicada tiene los permisos necesarios para iniciar la sesión como servicio.

Pestaña Log on de NSSM
Pestaña Log on de NSSM

Publicidad


Dependencies (Dependencias)

Mediante la pestaña Dependencies se puede indicar los servicios o grupos de servicios que deben iniciarse antes del que se está configurando. Evitando de este modo que falle el proceso de arranque por la falta de alguna dependencia.

Pestaña Dependencies de NSSM
Pestaña Dependencies de NSSM

Process (Procesos)

A través de la pestaña Process se puede indicar la prioridad con la que se ejecutará el servicio y su afinidad. Por defecto, el servicio se ejecuta con prioridad normal y usará todas las CPU. En el caso de que se desee restringir la ejecución del servicio solamente a un subconjunto de las CPU se deberá desmarcar All processors y seleccionar las que se desee.

Pestaña Process de NSSM
Pestaña Process de NSSM

Shutdown (Apagado)

En la pestaña Shutdown se pueden seleccionar los diversos tiempos de detención y tiempos de espera que se usan al ordenar la aplicación después de un bloqueo o cuando el servicio se detiene correctamente.

Pestaña Shutdown de NSSM
Pestaña Shutdown de NSSM

Publicidad


Exit actions (Acciones de salida)

La pestaña Exit actions permite modificar el reinicio de la aplicación y la acción predeterminada al finalizar este. Al mismo tiempo también se puede especificar la introducción de un retraso entre los reinicios automáticos del servicio.

Pestaña Exit actions de NSSM
Pestaña Exit actions de NSSM

I/O (Entrada/Salida, E/S)

Para los casos en los que se necesita redirigir la entrada y salida del servicio a un archivo esto se puede hacer mediante los campos de la pestaña I/O. Generalmente es suficiente con redirigir los valores de salida (stdout) y de error (stderr) para tener toda la información que el programa puede generar durante su ejecución. Algo con lo que se pude conseguir un log básico del servicio.

Pestaña I/O de NSSM
Pestaña I/O de NSSM

File rotation (Rotación de archivos)

La pestaña File rotation se debe usar junto la anterior para definir la política de rotación de archivos E/S. Para eliminar los archivos generados después de un tiempo, evitando de esta manera que el espacio ocupado por el log en el disco crezca sin límite.

Pestaña File Rotation de NSSM
Pestaña File Rotation de NSSM

Publicidad


Environment (Entorno)

Finalmente, mediante la pestaña Enviroment se puede especificar una lista de variables de entorno, una en cada línea, que se pasan a la aplicación. Si la casilla de verificación Replace default environment (Reemplazar entorno predeterminado) se selecciona el servicio únicamente recibirá las variables indicadas aquí, eliminando los valores por defecto. Por otro lado, si se dejan sin marcar se combina ambas.

Pestaña Enviroment de NSSM
Pestaña Enviroment de NSSM

Configurar un servicio en Windows mediante la línea de comandos

Aunque la interfaz gráfica es muy útil para iniciar los diferentes servicios, si se desea realizar un único cambio puede ser más rápido usar la línea de comandos. Para modificar una opción de un servicio solamente se tiene que pasar el parámetro adecuado a nssm. Así para crear un servicio básico escrito en Python desde la línea de comando solamente se tendrá que escribir.

nssm set myservice Application "C:\Python\Python 3.9\python.exe"
nssm set myservice AppDirectory "C:\Services"
nssm set myservice AppParameters myservice.py

En la primera línea se crea un servicio llamado myservice que se va a ejecutar con Python 3.9. Indicando en esta línea la ruta al intérprete. Posteriormente, en la segunda línea, se indica la ruta donde se ejecutará, una carpeta en el disco duro a la que se llama Services. Finalmente se indica el archivo con el código Python que se desea ejecutar, en este caso myservice.py que debe estar ubicado en C:\Services.

Conclusiones

En esta entrada hemos visto una solución para configurar los servicios en Windows de una forma más eficiente que la que existe por defecto. Facilitando enormemente esta tarea. Quizás no sea algo que se hace habitualmente, pero saber configurar un servicio en Windows puede ser de ayuda cuando es necesario.

¿Te ha parecido de utilidad el contenido?

¡Puntúalo entre una y cinco estrellas!

Puntuación promedio 0 / 5. Votos emitidos: 0

Ya que has encontrado útil este contenido...

¡Síguenos en redes sociales!

¡Siento que este contenido no te haya sido útil!

¡Déjame mejorar este contenido!

Dime, ¿cómo puedo mejorar este contenido?

Publicidad


Publicaciones relacionadas

  • La caverna del consumo, o cómo Greenspan miraba calzoncillos para hacer política monetaria – El bestiario de los indicadores económicos absurdos (parte 1)
  • La vanidad del paisaje, o por qué un becario sale a contar grúas a Manhattan – El bestiario de los indicadores económicos absurdos (parte 2)
  • Analytics Lane lanza la versión 1.1 del laboratorio con nuevas suites de CLV y Scoring
  • Cómo comparar tendencias con gráficos de líneas en Matplotlib: guía práctica paso a paso
  • Analytics Lane lanza la versión 1.2 del laboratorio con nuevas herramientas de ajuste de curvas y cálculo matricial
  • Subplots en Matplotlib: cómo organizar múltiples gráficos en una sola figura
  • Ley de Benford: cómo detectar datos manipulados con ejemplos reales
  • Síndrome del objeto brillante en ciencia de datos: el error simétrico a los costes hundidos
  • De la Regresión Logística al Scorecard: La Transformación Matemática

Publicado en: Herramientas Etiquetado como: Windows

Interacciones con los lectores

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

I accept the Terms and Conditions and the Privacy Policy

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Barra lateral principal

Suscríbete a nuestro boletín

Suscríbete al boletín semanal para estar al día de todas las publicaciones.

Política de Privacidad

Analytics Lane en redes sociales

  • Amazon
  • Bluesky
  • Facebook
  • GitHub
  • Instagram
  • Mastodon
  • Pinterest
  • RSS
  • Telegram
  • Tumblr
  • Twitter
  • YouTube

Publicidad

Entradas recientes

Noticias

Analytics Lane lanza la versión 1.2 del laboratorio con nuevas herramientas de ajuste de curvas y cálculo matricial

junio 12, 2026 Por Daniel Rodríguez

La vanidad del paisaje, o por qué un becario sale a contar grúas a Manhattan – El bestiario de los indicadores económicos absurdos (parte 2)

junio 11, 2026 Por Daniel Rodríguez

Cómo comparar tendencias con gráficos de líneas en Matplotlib: guía práctica paso a paso

junio 9, 2026 Por Daniel Rodríguez

Publicidad

Es tendencia

  • Método del codo (Elbow method) para seleccionar el número óptimo de clústeres en K-means publicado el junio 9, 2023 | en Ciencia de datos
  • Número óptimo de clústeres con Silhouette e implementación en Python publicado el junio 23, 2023 | en Ciencia de datos
  • Hoja de cálculo para repartir los escaños en base al método D’Hont Aplicar el método D’Hondt en Excel publicado el abril 14, 2021 | en Herramientas
  • Creación de gráficos de barras y gráficos de columnas con Seaborn publicado el julio 18, 2023 | en Python
  • Guía definitiva para trabajar con JSON en SQL Server publicado el noviembre 18, 2025 | en Herramientas

Publicidad

Lo mejor valorado

4.9 (24)

Seleccionar filas y columnas en Pandas con iloc y loc

4.6 (16)

Archivos JSON con Python: lectura y escritura

4.4 (14)

Ordenación de diccionarios en Python mediante clave o valor

4.7 (13)

Operaciones de filtrado de DataFrame con Pandas en base a los valores de las columnas

4.9 (11)

Pandas: Cambiar los tipos de datos en los DataFrames

Comentarios recientes

  • bif en JSON en bases de datos: cuándo es buena idea y cuándo no
  • bif en Cómo desinstalar Oracle Database 19c en Windows
  • M. Pilar en Cómo eliminar las noticias en Windows 11 y recuperar tu concentración
  • Daniel Rodríguez en Probabilidad básica: cómo entender el azar en nuestra vida diaria
  • Pepe en Probabilidad básica: cómo entender el azar en nuestra vida diaria

Publicidad


Footer

Analytics Lane

  • Acerca de Analytics Lane
  • Boletín de noticias
  • Contacto
  • Libros
  • Lo más popular
  • Noticias
  • Tienda
  • Tiendas afiliadas

Secciones

  • Ciencia de datos
  • Criptografía
  • Herramientas
  • Machine Learning
  • Opinión
  • Productividad
  • Programación
  • Reseñas

Sobre de Analytics Lane

En Analytics Lane tratamos de explicar los principales conceptos de la ciencia e ingeniería de datos con un enfoque práctico. Los principales temas tratados son ciencia de datos, ingeniería de datos, inteligencia artificial, machine learning, deep learning y criptografía. Además, también se habla de los principales lenguajes de programación y herramientas utilizadas por los científicos e ingenieros de datos.

Copyright © 2018-2026 Analytics Lane ·Términos y condiciones ·Política de Cookies ·Política de Privacidad ·Herramientas de privacidad ·Contacto