Raspberry Pi 4 ビットコイン フルノード構築で挫折した所を説明

Raspberry Pi 4 ビットコイン フルノード構築で挫折した所を説明

ラズパイ+フルノードといえばUmbrelだと思いますがLinuxの勉強も兼ねてBitcoin Coreで構築しました、挫折しましたがなんとか同期終わり現在は元気に動いてくれてます。

ブロックチェーンデータが350GBくらいあるので外付けSSDにブロックチェーンデータを入れます。

Bitcoin Coreのビルドやセットアップはビットコイン研究所の記事を参考にしました。

※有料オンラインサロンの記事です

https://www.facebook.com/groups/bitcoinlab/permalink/1287950104634661

セットアップ方法は他にもググると出ます、ラズパイOSのインストールやSSH接続の方法もここでは説明は省きます。

外付けSSDを使った前提での説明です。

色々と素人なので用語の使い方とか違和感あるかもしれません。

途中ネットショップの商品リンクを貼っていますがアフィじゃないのでご安心をw

自分の環境

ラズパイ4 8GB

SSD:Crucial SSD 1000GB MX500

macOS10.15.7からSSH接続

ケースはこちらを使ってます、ヒートシンクつき

https://www.amazon.co.jp/dp/B07H2WKYBF/ref=cm_sw_r_tw_dp_VZP1N84CV2NHKFJPG4N4?_encoding=UTF8&psc=1

挫折ポイント①:ビットコインコアが動いてるのかわからない

デーモン起動後、bitcoin server starting...って表示されたら

sudo tail -f debug.log

をすると動いてるのを確認できます。

挫折ポイント②:SSDのフォーマット方法がわからない

フォーマット方法はこちらの記事を参考にしました。

https://qiita.com/ats030/items/65c5585c5c701841525e

https://iot-plus.net/make/raspi/extend-strage-using-ssd-to-store-bigdata/

fstabは設定しなくても動きます。

デバイスの確認

sudo fdisk -l

Device      Start        End    Sectors   Size Type

/dev/sda1      40     409639     409600   200M EFI System

/dev/sda2  411648 1953525134 1953113487 931.3G Linux filesystem

パーティションを作成

sudo fdisk /dev/sda

  • d パーティションを削除
  • n 新しいパーティションを作成
  • 色々聞かれるけどEnter押しまくる
  • p 状態を確認
  • wを押して終了

/dev/sda2をフォーマット

sudo mkfs.ext4 /dev/sda2

マウントポイントを作成

ディレクトリを作ります、名前は例です

sudo mkdir /mnt/bitcoin

マウントされてるか確認

sudo mount -t ext4 /dev/sda2 /mnt/bitcoin

df -h |grep bitcoin

/dev/sda2        916G  376G  494G   44% /mnt/bitcoin

※ 376GB使用中になってますがブロックチェーン同期が終わったあとに実行したコマンドなので、通常は容量数MBだと思います

fstabは設定しなくても動きます

挫折ポイント③:外付けSSDにブロックチェーンデータをダウンロードさせたい

nanoとかでbitcoin.confを開いて一番下にこれを記入

datadir=/mnt/bitcoin

念の為にこちらも記入

maxmempool=100

デーモン起動時のコマンド

bitcoind -datadir=/mnt/bitcoin -daemon

挫折ポイント④:同期中に止まる・マウント解除される

ここが一番苦労しました。

結論:SATA-USB変換アダプタで接続すれば安定します

OWL-PCSPS3U3U2 を使いました。ACアダプタ付きにしましょう。

https://www.biccamera.com/bc/item/3376550

ブロックチェーンの同期は3日くらいかかりました、ラズパイなので結構かかります。

(iMac 2019でフルノード作った時は1日くらいで終わりました)

症状

2013年くらいまで同期が終わるとエラー吐いてマウント解除されます

ラズパイをGUIで操作している場合、マウスカーソルも動かなくなりました

  • LevelDB read failure:Corruption:truncated block read:/mnt/bitcoin/chainstate/001637.Idb

  • Fatal LevelDB error:Corruption:truncated block read:/mnt/bitcoin/chainstate/001637.Idb

  • Error: Error reading from database, shutting down.Error reading from database:Fatal LevelDB error:Corruption:truncated block read:/mnt/bitcoin/chainstate/001637.Idbl

データベースエラーでなんちゃらかんちゃら・・・

GUI操作は不安定なのでSSH接続にして有線LAN・外付けSSD以外のデバイスは全部切ってもダメでした

原因はラズパイの電源供給不足みたいです。

試したけどダメだったこと

  • ACアダプタをニンテンドースイッチ用のを使う
  • SSDケースに入れて直接接続
  • セルフパワーのUSBハブ経由で接続

※白いケーブルは有線LANです

おわりに

フルノードに限った話じゃないですが技術関連の日本語情報は少なくて苦労しましたw

おかげでLinuxコマンドいろいろ覚えましたw

今のところ不具合なく動いてます!次はライトニングノードを構築してみたい!

Remaining : 0 characters / 0 images
334

Sign up / Continue after login

Related stories

Writer

好きなことを好きなだけアップ

Share

Popular stories

ゆうせい荘の裁判を見てきた

2423

ビットコイナーでいること、それはかっこいいこと

616

ゆうせい荘? 核戦争絶対回避マン(@yusei_repaydebt)がTwitter更新

100