Tech

Bitcoinの初期ブロックチェーンのDLを早くする bootstrap.dat

  • このエントリーをはてなブックマークに追加

2015年2月にリリースされたv0.10.0のヘッダーファースト同期の機能で、あまり必要なくなったかもしれません。ただ、ヘッダーファースト同期でも僕の環境では一日近くかかりました。

2015年2月時点で、bootstrap.datは、22G位あります。

問題点

bitcoind を立ち上げ直後に数十Gのフルのブロックチェーンをダウンロードするのは、時間がかかり過ぎる。(数日かかる)

2つの解決方法

1. bootstrap.dat

torrent で bootstrap.dat をダウンロードして、スピードを上げる。
* 数時間でダウンロードされる。僕の場合、1時間45分。

2. zipファイルなブロックをsourceforgeからダウンロード

今回、1の方法を説明します。

手順

  1. torrentファイル(bootstrap.dat.torrent)をダウンロード
  2. torrentクライアントで bootstrap.datをダウンロード

以下が公式のドキュメントです。(英語)
bitcoin/doc/bootstrap.md

bootstrap.dat.torrent のダウンロード先

下記ページの下の方の「bootstrap.dat」のリンクをクリック。

Download – Bitcoin

ブロックチェーンのインポート方法

  • 自動インポート(やり方が変わった?)
  • デフォルトのデータディレクトリにbootstrap.datを置くと自動で読み込み始める
  • bitcoin-qtからインポート状況が見られる

インポートの確認方法

ググっても英語でもまったくヒットしないが、以下を参考に。

ネット接続をきっても、block heightが上がるのであれば、きっとbootstrap.datから読んでいるのだろう、と思っています。
ちなみに、bootstrap.datを使っても、33万まで、8時間以上はかかっているようです。

btcd の addblockを使う場合

特に以下のやり方でやる理由はもうないかと思います。
資料として残しておきます。
btcdの中にaddblockというコマンドがあるのでダウンロード

以下から、git clone などする。
Go言語なので、Goのコンパイル環境が必要かも知れません。

conformal/btcd

util/addblock 以下にある

  1. btcd を停止する
  2. addblock -i でbootstrap.dat の場所を指定して実行

Windowsの場合

C:\> "%PROGRAMFILES%\Btcd Suite\Btcd\addblock" -i C:\Path\To\bootstrap.dat

Linux/Unix/BSD/POSIXの場合

$ $GOPATH/bin/addblock -i /path/to/bootstrap.dat

参考URL
* Using bootstrap.dat · conformal/btcd Wiki

sourceforge.netに書かれた手順

  • zip解凍して blk*.dat をbitcoinのデータディレクトリにコピー
  • database/log* を削除
  • bitcoin か bitcoind を実行
Instructions: 
- Unzip and copy blk*.dat files into your bitcoin data directory
- Remove any database/log* files from your bitcoin data directory
- Run bitcoin or bitcoind

参考URL
Bitcoin – Browse /Bitcoin/blockchain at SourceForge.net

注意点

  • ウォレットが空の状態でやって下さい。
  • 念のため重要なファイルは、バックアップを行なって下さい。

参考

ソースコード内のドキュメント(英語)

bitcoin/doc/bootstrap.md at master · bitcoin/bitcoin

説明(README.txt)

https://bitcoin.org/bin/blockchain/README.txt

フォーラム

  • このエントリーをはてなブックマークに追加