modo daemon bitcoind

  1. Cuando se ejecuta bitcoind desde un servicio systemd, como en https://github.com/bitcoin/bitcoin/blob/master/contrib/init/bitcoind.service , ¿cuál es el papel de la bandera -daemon?

Básicamente estoy preguntando qué hace -daemon en una situación en la que bitcoind está ejecutar como servicio, y no como una billetera. Y qué sucede si -daemon no se usa -> en un archivo de servicio systemd.

  1. Si uno establece daemon = 1 en bitcoin .conf, ¿es redundante usar también el indicador -daemon al iniciar

Responder

Cuando se ejecuta bitcoind desde un servicio systemd, como en https://github.com/bitcoin/bitcoin/blob/master/contrib/init/bitcoind.service , ¿cuál es el función del indicador -daemon?

-daemon inicia bitcoind en segundo plano como un demonio. Así que si ejecute bitcoind -daemon en la terminal, el programa se cerrará inmediatamente pero bitcoind aún se está ejecutando en el fondo. Sin -daemon, verá que bitcoind parece bloquearse en la terminal, pero eso solo significa que se está ejecutando. Si detiene el comando, bitcoind también se detendrá.

Si uno establece daemon = 1 en bitcoin.conf, ¿es redundante usar también el -Indicador de demonio al iniciar

Sí. Esto se aplica a todas las opciones de la línea de comandos.

Comentarios

  • Sí, veo que la terminal parece ' ocupado ' o ' colgando ' cuando la configuración del demonio está desactivada. Pero mi pregunta no se refería a iniciar el demonio en la terminal, sino en un servicio systemd. En este caso, ¿cuál es la consecuencia de ejecutar con la configuración del demonio activada, o ir a Type = simple y ningún demonio hace el trabajo correctamente también?
  • Como expliqué en su otra pregunta sobre esto, no puede use Type = simple sin -daemon. Systemd no funcionará con eso.
  • En la otra pregunta sobre bifurcación vs simple, presentó un caso en contra de usar Type = simple junto con daemon = 1. En mi comentario anterior, pedía Type = simple junto con daemon = 0.
  • Ya veo. No hay diferencia entre usar Type = simple y daemon = 0 y usar Type = forking y daemon = 1.
  • Según mi experiencia, Type=simple y daemon=1 en el archivo btc conf, hace que el demonio sea eliminado justo después de comenzar con systemctl start

Respuesta

Creo que comprender la jerarquía de cómo funciona el software sería útil aquí. Estás interactuando con el software, Bitcoin Core. Mientras experimentas una billetera GUI y estadísticas de red o interactúas con bitcoin-cli, tu sistema operativo está experimentando bitcoind, el bitcoin daemon. Es, en el ámbito de este escenario, la pieza fundamental de su billetera o nodo bitcoin.

Wikipedia presenta a los demonios muy bien:

un demonio (/ ˈdiːmən / o / ˈdeɪmən /) [1] es un programa de computadora que se ejecuta como un proceso en segundo plano, en lugar de estar bajo el control directo de un usuario interactivo

Espeluznante. En sistemas Unix específicamente, es un demonio si

el proceso se inicia desde la línea de comando o desde un script de inicio como un script de inicio

El script de inicio en este caso es el bitcoin. conf archivo. Si inicia el demonio, lo está haciendo ejecutándose en segundo plano. Todos los procesos centrales que se requieren para ejecutar el código subyacente y para que se use una GUI y una línea de comando además de eso están activos, silenciosamente.

Cualquier interacción que tenga con el software requiere que el demonio esté en ejecución. Si aún no lo está, lo iniciará. Una vez ejecutado, puede cambiar el archivo bitcoin.conf o las variables dinámicamente a través de la línea de comando como mejor le parezca durante su sesión.

Luego, cuando haya terminado, en cualquier estado en el que se encuentre el archivo bitcoin.conf cuando la computadora o el demonio begin determinará su comportamiento.

Si desea que bitcoin se ejecute siempre en segundo plano, asegúrese de que el archivo de configuración ejecute el demonio al inicio o que lo inicie usted mismo si no es así en ejecución. Es redundante hacer ambas cosas.

Deja una respuesta

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