Bitcoin Forum
December 18, 2017, 01:32:54 PM *
News: Latest stable version of Bitcoin Core: 0.15.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: Sincronizar por linea de comandos SOLUCIONADO  (Read 1133 times)
01835113
Full Member
***
Offline Offline

Activity: 130


View Profile
June 26, 2014, 07:43:05 PM
 #1

Hola
Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.
1513603974
Hero Member
*
Offline Offline

Posts: 1513603974

View Profile Personal Message (Offline)

Ignore
1513603974
Reply with quote  #2

1513603974
Report to moderator
1513603974
Hero Member
*
Offline Offline

Posts: 1513603974

View Profile Personal Message (Offline)

Ignore
1513603974
Reply with quote  #2

1513603974
Report to moderator
1513603974
Hero Member
*
Offline Offline

Posts: 1513603974

View Profile Personal Message (Offline)

Ignore
1513603974
Reply with quote  #2

1513603974
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
xcbtrader
Hero Member
*****
Offline Offline

Activity: 849


View Profile
June 26, 2014, 08:37:07 PM
 #2

Hola
Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.


Buenas. Si escribes help en la linea de comandos te dice todas las instrucciones que puedes poner.
De todas formas, cuando está sincronizado te sale un mensaje en verde (o eso creo)

Saludos

01835113
Full Member
***
Offline Offline

Activity: 130


View Profile
June 27, 2014, 03:32:02 AM
 #3

Hola
Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.


Buenas. Si escribes help en la linea de comandos te dice todas las instrucciones que puedes poner.
De todas formas, cuando está sincronizado te sale un mensaje en verde (o eso creo)

Saludos

¿Un mensaje en verde desde la terminal?
xcbtrader
Hero Member
*****
Offline Offline

Activity: 849


View Profile
June 27, 2014, 04:57:18 AM
 #4

Hola
Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.


Buenas. Si escribes help en la linea de comandos te dice todas las instrucciones que puedes poner.
De todas formas, cuando está sincronizado te sale un mensaje en verde (o eso creo)

Saludos

¿Un mensaje en verde desde la terminal?

Si.

dserrano5
Legendary
*
Offline Offline

Activity: 1848



View Profile
June 27, 2014, 06:03:29 AM
 #5

Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.

Que yo sepa no se puede.

Shawshank
Legendary
*
Offline Offline

Activity: 1359



View Profile
June 27, 2014, 11:41:28 AM
 #6

Desde la versión 0.9, se ha separado la funcionalidad del servidor en bitcoind, y la del cliente en bitcoin-cli. El ejecutable bitcoin-qt funciona como cliente y servidor.

No hay una forma totalmente correcta de saber si hemos recibido el último bloque, porque la sincronización es un proceso continuo. La mejor aproximación es ver el día y la hora del último bloque recibido y comprobar si no dista, por ejemplo, más de 30 minutos de la hora actual.

Te adjunto los comandos que acabo de lanzar en mi máquina Ubuntu que demuestra que tengo el Bitcoin Core actualizado. En Windows sería muy parecido.

$ bitcoin-qt &
[1] 23682

$ ./bitcoin-cli getblockcount
308097

$ ./bitcoin-cli getblockhash 308097
000000000000000025ad567405f49664d69968686762917216b9983951eec67d

$ ./bitcoin-cli getblock 000000000000000025ad567405f49664d69968686762917216b9983951eec67d | grep time
    "time" : 1403868052,

$ date -d @1403868052
vie jun 27 13:20:52 CEST 2014


Como la fecha actual son las 13:29 del 27 de junio, la diferencia es de "solo" 9 minutos, y por tanto se puede considerar que el Bitcoin Core al que he accedido está actualizado.

El ejemplo que he pasado está ejecutado en Ubuntu, pero para Windows sería parecido. Si quieres que se ejecute todo de forma automática, quizás tengas que utilizar sed o gawk en Linux, pero espero que te sirva para hacerte una idea.

Si tienes cualquier otra duda, pregunta.

A bank-only system is similar to having your Bitcoin wallet confined to your national ID, essentially forfeiting your privacy and handing all private keys to the government
01835113
Full Member
***
Offline Offline

Activity: 130


View Profile
June 27, 2014, 12:00:28 PM
 #7

Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.

Que yo sepa no se puede.

Entonces no sé cómo puedo saber cuando puedo poner a funcionar mis aplicaciones desde un servidor.
Shawshank
Legendary
*
Offline Offline

Activity: 1359



View Profile
June 27, 2014, 12:09:57 PM
 #8

Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.

Que yo sepa no se puede.

Entonces no sé cómo puedo saber cuando puedo poner a funcionar mis aplicaciones desde un servidor.

Lo puedes conseguir comprobando la fecha y hora que te devuelve un script como el que te he indicado.

Si solo necesitas saber si tienes Bitcoin Core sincronizado para ver si puedes lanzar tus aplicaciones, ejecuta el siguiente comando:
bitcoin-cli getblockcount

y comprueba visualmente que coincide con el último bloque recibido en https://blockchain.info

A bank-only system is similar to having your Bitcoin wallet confined to your national ID, essentially forfeiting your privacy and handing all private keys to the government
01835113
Full Member
***
Offline Offline

Activity: 130


View Profile
June 27, 2014, 12:23:09 PM
 #9

Quería saber si alguien me podría indicar como puedo saber, por línea de órdenes, si mi programa bitcoind está sincronizado con la red.

Que yo sepa no se puede.

Entonces no sé cómo puedo saber cuando puedo poner a funcionar mis aplicaciones desde un servidor.

Lo puedes conseguir comprobando la fecha y hora que te devuelve un script como el que te he indicado.

Si solo necesitas saber si tienes Bitcoin Core sincronizado para ver si puedes lanzar tus aplicaciones, ejecuta el siguiente comando:
bitcoin-cli getblockcount

y comprueba visualmente que coincide con el último bloque recibido en https://blockchain.info




Muchas gracias funciona, yo también uso ubuntu.
Perdón por mi mensaje anterior pero no se me mostraba la otra respuesta que me habías dado donde hablas de bitcoin-cli. No sabía eso, que se había separado la funcionalidad del cliente y servidor en dos ejecutables, entonces hay que arrancar bitcoind e interactuar a través de los comandos mediante bitcoin-cli. Pero también funciona con "bitcoind comando" aún, he comprobado.
Hasta luego gracias.


01835113
Full Member
***
Offline Offline

Activity: 130


View Profile
June 27, 2014, 12:30:28 PM
 #10

Joer, que guay está esto me encanta  Grin
dserrano5
Legendary
*
Offline Offline

Activity: 1848



View Profile
June 27, 2014, 12:31:28 PM
 #11

No hay una forma totalmente correcta de saber si hemos recibido el último bloque, porque la sincronización es un proceso continuo.

Sí, pero es que en el -qt hay una indicación visual de que estamos sincronizados, o de que estamos X tiempo por detrás. Por tanto el cliente lo sabe, pero por alguna razón no exporta un valor como este mediante el interface RPC.

Shawshank
Legendary
*
Offline Offline

Activity: 1359



View Profile
June 27, 2014, 12:50:29 PM
 #12

No hay una forma totalmente correcta de saber si hemos recibido el último bloque, porque la sincronización es un proceso continuo.

Sí, pero es que en el -qt hay una indicación visual de que estamos sincronizados, o de que estamos X tiempo por detrás. Por tanto el cliente lo sabe, pero por alguna razón no exporta un valor como este mediante el interface RPC.

Parece que ya está añadido también a través de la interfaz JSON-RPC. Acabo de lanzar el siguiente comando:

curl --user miusuario --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method":"getblockcount", "params":[]}' -H 'content-type: text/plain;' http://127.0.0.1:8332
Enter host password for user 'miusuario':

Y la interfaz JSON-RPC me ha devuelto lo siguiente:

{"result":308104,"error":null,"id":"curltest"}

indicando que, efectivamente, el bloque más alto de la cadena es la número 308104.

A bank-only system is similar to having your Bitcoin wallet confined to your national ID, essentially forfeiting your privacy and handing all private keys to the government
dserrano5
Legendary
*
Offline Offline

Activity: 1848



View Profile
June 27, 2014, 12:55:27 PM
 #13

{"result":308104,"error":null,"id":"curltest"}

indicando que, efectivamente, el bloque más alto de la cadena es la número 308104.

Pero no hay ningún valor que te diga "Estamos 0 bloques por detrás", tal como dice el GUI (vale, el GUI lo traduce en un intervalo temporal pero viene siendo lo mismo). O sea, seguimos teniendo que ir a terceros para comprobar si el último bloque coincide.

Shawshank
Legendary
*
Offline Offline

Activity: 1359



View Profile
June 27, 2014, 01:18:21 PM
 #14

{"result":308104,"error":null,"id":"curltest"}

indicando que, efectivamente, el bloque más alto de la cadena es la número 308104.

Pero no hay ningún valor que te diga "Estamos 0 bloques por detrás", tal como dice el GUI (vale, el GUI lo traduce en un intervalo temporal pero viene siendo lo mismo). O sea, seguimos teniendo que ir a terceros para comprobar si el último bloque coincide.

¡Ah! ¡Cierto! No dice en ningún momento estamos x bloques por detrás porque no es un valor fiable.

La interfaz gráfica dice "Descargados abc bloques de un total de xyz bloques", pero es un hack que es fácilmente trucable. En ocasiones he visto cifras de bloques en los miles de millones, algo imposible, porque hay nodos que intentan engañar. Por esa razón, tengo entendido que en la próxima interfaz gráfica de Bitcoin Core, se va a basar únicamente en el timestamp del último bloque recibido, que es lo realmente fiable y no se puede trucar.

A bank-only system is similar to having your Bitcoin wallet confined to your national ID, essentially forfeiting your privacy and handing all private keys to the government
gizzig
Hero Member
*****
Offline Offline

Activity: 630


View Profile WWW
June 27, 2014, 06:34:07 PM
 #15

Hola
Blockchain tiene un API que (creo) hace eso y mucho más y es gratuito.

https://blockchain.info/es/api

Está muy bien explicado y funciona desde la Web


Pages: [1]
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!