The Spanish wiki is no longer maintained and is in read-only mode. Information contained within may be inaccurate or outdated. Please go to the English wiki for more up to date information.

Traducción automática del inglés: la wiki en español ya no se mantiene y está en modo de solo lectura. La información contenida en ella puede ser inexacta o estar desactualizada. Visite la wiki en inglés para obtener información más actualizada.

Ejecución de Bitcoin

De Bitcoin Wiki
(Redirigido desde «Ejecutando Bitcoin»)
Ir a la navegación Ir a la búsqueda

Existen dos versiones alternativas del programa original de Bitcoin; una que dispone de interfaz gráfica de usuario (a la que a menudo se denomina simplemente “Bitcoin”), y una versión headless, manejada por línea de comandos sin interfaz gráfica, llamada bitcoind. Ambas son totalmente compatibles entre sí, admiten los mismos argumentos desde línea de comandos, leen el mismo archivo de configuración y leen y escriben en los mismos archivos de datos. Por ello, solamente se puede ejecutar uno de los dos programas, Bitcoin o bitcoind, en un mismo sistema en un momento dado (si se intenta ejecutar el otro, aparece un aviso de que el programa, Bitcoin o bitoind, ya está en ejecución y la segunda versión se cierra de inmediato).

Argumentos de línea de comandos

Al ejecutar Bitcoin (o bitcoind) con los argumentos "-?" o "–-help", se mostrará en pantalla una lista con los comandos disponibles:

Uso:

 bitcoind [opciones]                     
 bitcoind [opciones] <comando> [parámetros]  Enviar comando al ejecutable Bitcoin (ejecutado con la opción "-server") o a bitcoind
 bitcoind [opciones] help                Mostrar un listado de comandos
 bitcoind [opciones] help <comando>      Mostrar la ayuda para un comando

Opciones:

 -conf=<archivo>    Especificar el archivo de configuración (por defecto: bitcoin.conf)
 -pid=<archivo>     Especificar el archivo pid (por defecto: bitcoind.pid)
 -gen               Generar bitcoins
 -gen=0             No generar bitcoins
 -min               Iniciarse minimizado
 -datadir=<dir>     Especificar directorio de datos
 -timeout=<n>       Especificar tiempo límite de conexión (en milisegundos)
 -proxy=<ip:puerto> Conectar a través de proxy socks4
 -dns               Permitir la búsqueda de DNS para addnode y connect
 -port=<puerto>     Estar a la escucha de conexiones en <puerto> (por defecto: 8333 o testnet 18333)
 -maxconnections=<n>  Mantener como máximo <n> conexiones con pares (por defecto: 125)
 -addnode=<ip>      Añadir un nodo al que conectarse
 -connect=<ip>      Conectarse solo al nodo especificado
 -nolisten          No aceptar conexiones desde el exterior
 -nodnsseed         No iniciar la lista de pares mediante DNS
 -banscore=<n>      Umbral para la desconexión de pares con mal comportamiento (por defecto: 100)
 -bantime=<n>       Número de segundos en el que evitar la reconexión de pares con mal comportamiento (por defecto: 86400)
 -maxreceivebuffer=<n> Buffer de datos de recepción máximo por conexión, <n>*1000 bytes (por defecto: 10000)
 -maxsendbuffer=<n> Buffer de envío máximo por conexión, <n>*1000 bytes (por defecto: 10000)
 -noupnp            No intentar el uso de UPnP para mapear el puerto de escucha
 -paytxfee=<amt>    Comisión por KB que se ha de añadir a las transacciones enviadas
 -daemon            Ejecutar en segundo plano como daemon y aceptar comandos
 -testnet           Utilizar la red de pruebas testnet (bitcoins no reales)
 -debug             Mostrar información de depuración adicional
 -logtimestamps     Incluir una marca de tiempo (timestamp) con la información de depuración
 -printtoconsole    Enviar la información de trazas/depuración a la consola en lugar de al archivo debug.log
 -rpcuser=<user>    Nombre de usuario para las conexiones JSON-RPC
 -rpcpassword=<pw>  Contraseña para las conexiones JSON-RPC
 -rpcport=<puerto>  Estar a la escucha de conexiones JSON-RPC en <puerto> (por defecto: 8332)
 -rpcallowip=<ip>   Permitir las conexiones JSON-RPC desde la dirección IP especificada
 -rpcconnect=<ip>   Enviar los comandos al nodo que se ejecuta en la <ip> (por defecto: 127.0.0.1)
 -keypool=<n>       Establecer el tamaño de la reserva de claves (key pool) en <n> (por defecto: 100)
 -rescan            Volver a explorar la cadena de bloques para detectar las transacciones que afectan a la cartera local

Opciones SSL: (véanse las instrucciones de instalación de SSL)

 -rpcssl                                  Utilizar OpenSSL (https) para las conexiones JSON-RPC
 -rpcsslcertificatechainfile=<file.cert>  Archivo de certificados de servidor (por defecto: server.cert)
 -rpcsslprivatekeyfile=<file.pem>         Clave privada del servidor (por defecto: server.pem)
 -rpcsslciphers=<ciphers>                 Cifrados aceptables (por defecto: TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH)

Adicionales (válidos pero no listados en -? help):

 -checkblocks       Volver a cargar la cadena de bloques completa (puede llevar muchísimo tiempo)

Archivo de configuración Bitcoin.conf

Todas las opciones de línea de comandos (excepto -datadir y -conf) pueden ser especificadas mediante un archivo de configuración y todas las opciones del archivo de configuración pueden especificarse también desde la línea de comandos. Las opciones indicadas en línea de comandos tiene prioridad sobre los valores establecidos en el archivo de configuración.

El archivo de configuración consiste en una lista de asignaciones con la sintaxis "ajuste=valor", una por línea, a las que se pueden añadir comentarios, que empiezan por el carácter '#'.

El archivo de configuración no se genera automáticamente. Puede crearlo mediante su editor de texto preferido. Por defecto, Bitcoin (o bitcoind) busca un archivo llamado 'bitcoin.conf' el directorio de datos de Bitcoin, pero tanto el directorio de datos como la ruta del archivo de configuración pueden ser modificados mediante los argumentos -datadir y -conf desde línea de comandos.

Operating System Default bitcoin datadir Typical path to configuration file
Windows %APPDATA%\Bitcoin\ (XP) C:\Documents and Settings\username\Application Data\Bitcoin\bitcoin.conf

(Vista, 7) C:\Users\username\AppData\Roaming\Bitcoin\bitcoin.conf

Linux $HOME/.bitcoin/ /home/username/.bitcoin/bitcoin.conf
Mac OSX $HOME/Library/Application Support/Bitcoin/ /Users/username/Library/Application Support/Bitcoin/bitcoin.conf

Nota: si se ejecuta Bitcoin en modo testnet, el subdirectorio "testnet" se concatenará al directorio de datos automáticamente.

Ejemplo de Bitcoin.conf

He aquí un archivo bitcoin.conf de ejemplo.

 # bitcoin.conf configuration file. Lines beginning with # are comments.
 
 
 # Network-related settings:
 
 # Run on the test network instead of the real bitcoin network.
 #testnet=0
 
 # Connect via a socks4 proxy
 #proxy=127.0.0.1:9050
 
 ##############################################################
 ##            Quick Primer on addnode vs connect            ##
 ##  Let's say for instance you use addnode=4.2.2.4          ##
 ##  addnode will connect you to and tell you about the      ##
 ##    nodes connected to 4.2.2.4.  In addition it will tell ##
 ##    the other nodes connected to it that you exist so     ##
 ##    they can connect to you.                              ##
 ##  connect will not do the above when you 'connect' to it. ##
 ##    It will *only* connect you to 4.2.2.4 and no one else.##
 ##                                                          ##
 ##  So if you're behind a firewall, or have other problems  ##
 ##  finding nodes, add some using 'addnode'.                ##
 ##                                                          ##
 ##  If you want to stay private, use 'connect' to only      ##
 ##  connect to "trusted" nodes.                             ##
 ##                                                          ##
 ##  If you run multiple nodes on a LAN, there's no need for ##
 ##  all of them to open lots of connections.  Instead       ##
 ##  'connect' them all to one node that is port forwarded   ##
 ##  and has lots of connections.                            ##
 ##       Thanks goes to [Noodle] on Freenode.               ##
 ##############################################################
 
 # Use as many addnode= settings as you like to connect to specific peers
 #addnode=69.164.218.197
 #addnode=10.0.0.2:8333
 
 # ... or use as many connect= settings as you like to connect ONLY
 # to specific peers:
 #connect=69.164.218.197
 #connect=10.0.0.1:8333
 
 # Do not use Internet Relay Chat (irc.lfnet.org #bitcoin channel) to
 # find other peers.
 #noirc=0
 
 # Maximum number of inbound+outbound connections.
 #maxconnections=
 
 
 # JSON-RPC options (for controlling a running Bitcoin/bitcoind process)
 
 # server=1 tells Bitcoin-QT to accept JSON-RPC commands.
 #server=0
 
 # You must set rpcuser and rpcpassword to secure the JSON-RPC api
 #rpcuser=Ulysseys
 #rpcpassword=YourSuperGreatPasswordNumber_DO_NOT_USE_THIS_OR_YOU_WILL_GET_ROBBED_385593
 
 # How many seconds bitcoin will wait for a complete RPC HTTP request.
 # after the HTTP connection is established. 
 #rpctimeout=30
 
 # By default, only RPC connections from localhost are allowed.  Specify
 # as many rpcallowip= settings as you like to allow connections from
 # other hosts (and you may use * as a wildcard character):
 #rpcallowip=10.1.1.34
 #rpcallowip=192.168.1.*
 
 # Listen for RPC connections on this TCP port:
 #rpcport=8332
 
 # You can use Bitcoin or bitcoind to send commands to Bitcoin/bitcoind
 # running on another host using this option:
 #rpcconnect=127.0.0.1
 
 # Use Secure Sockets Layer (also known as TLS or HTTPS) to communicate
 # with Bitcoin -server or bitcoind
 #rpcssl=1
 
 # OpenSSL settings used when rpcssl=1
 #rpcsslciphers=TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH
 #rpcsslcertificatechainfile=server.cert
 #rpcsslprivatekeyfile=server.pem
 
 
 # Miscellaneous options
 
 # Set gen=1 to attempt to generate bitcoins
 #gen=0
 
 # Use SSE instructions to try to generate bitcoins faster.
 #4way=1
 
 # Pre-generate this many public/private key pairs, so wallet backups will be valid for
 # both prior transactions and several dozen future transactions.
 #keypool=100
 
 # Pay an optional transaction fee every time you send bitcoins.  Transactions with fees
 # are more likely than free transactions to be included in generated blocks, so may
 # be validated sooner.
 #paytxfee=0.00
 
 # Allow direct connections for the 'pay via IP address' feature.
 #allowreceivebyip=1
   
 # User interface options
 
 # Start Bitcoin minimized
 #min=1
 
 # Minimize to the system tray
 #minimizetotray=1

Plataformas

Windows

Inicio automático

Para configurar el cliente de Bitcoin para que se inicie automáticamente:

Se puede utilizar el archivo de configuración o los ajustes en la interfaz gráfica:

Ajustes -> Opciones

Marcar la casilla que dice:

[X] Ejecutar Bitcoin al iniciar el sistema

Archivo:Client Settings Options windows.png

Automatización por batch

Para programar llamadas desde un archivo batch, tendrá que ejecutar el programa daemon (bitcoind.exe). Si se ejecuta la versión gráfica bitcoin.exe con la opción "-server", el programa responderá a las llamadas con mensajes para la interfaz gráfica y no se podrán procesar las respuestas desde el archivo batch.

Mac

Linux

Archivo:Client Settings Options.png