Ubuntuのでチェーンブロック1スクエアイーサネット専用チェーンを構築するために学びます

実際には、これまでにない「ブロック鎖」、「ビットコイン」はちょうどそれが非常に深い、非常に神秘的な、非常に複雑なものであると感じ理解。
しかしガチョウは、私はこの学期のコースは、学習ブロック鎖であることが判明期待していませんでした。
私の計画では、仕事を終えるために私の時間とエネルギーを占有しなければならなかったではない、少しイライラ。
学んだ、それはそれのために良いですので、しかし、常にそこに収穫されます。

タスクは、Ubuntuのではファーストクラスのプライベート・イーサネット・スクエア・チェーンを構築することです。
次は、トピックを入力します。


まず、環境を準備

1.仮想マシンはUbuntu16.04をインストール
ここに画像を挿入説明
:Ubuntuのインストール2
ここに画像を挿入説明
:VMをインストールする3.ツール
ここに画像を挿入説明
4.アップデート元を:

sudo gedit /etc/apt/sources.list

ここに画像を挿入説明
そして、アリの雲は、特にオンラインチュートリアルを見つけることができ、清華大学を交換してください。

アップデート元:

sudo apt-get update

ここに画像を挿入説明
これもvimのインストール、vimのテキストエディタで、後に設定ファイルを変更する必要があります。

sudo apt-get install vim-gtk
  • リマインダーを必要とする、vimのいくつかのバージョンがありますが、私は、インストールの前に失敗した後、このチュートリアルのバージョンがインストールされて見て、その後、成功しています。

ここに画像を挿入説明

第二に、インストール行くのロケール

1.仮想マシンでのインストールパッケージの行く言語をダウンロード:

wget https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz

ここに画像を挿入説明
ダウンロードしたアーカイブのディレクトリ2.、それが、/ usr /ローカルフォルダに解凍します。

sudo tar -xzvf go1.10.3.linux-amd64.tar.gz -C /usr/local

ここに画像を挿入説明
ここに画像を挿入説明
外出先フォルダホームディレクトリに新しいファイルを作成します。3.:

mkdir go

ここに画像を挿入説明
4.設定環境変数
オープン環境変数の設定ファイル:

sudo vim ~/.bashrc

コピーして、最後にファイルに次のコードを貼り付け、保存して終了:

export GOROOT=/usr/local/go
export GOBIN=$GOROOT/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOBIN

ここに画像を挿入説明
環境変数を有効にします:

source ~/.bashrc

ここに画像を挿入説明
インストールが成功したかどうか確認してください。5.:

go version

ここに画像を挿入説明
この時点で、外出先でロケールがインストールされています!

第三には、イーサネットスクエアイーサリアムクライアントをインストールゲス

ゲスが行く言語とクライアントソフトウェアイーサリアムプロトコルを使用して達成されるGoEthereumオープンソースプロジェクトを、参照され、現在はほとんどのユーザー、最も広く使用されているクライアントです。

順序で次のコマンドを入力します。1.:

sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum
  • 私は2番目のコマンドはsudoのアドインのapt-リポジトリ-y PPAによイーサリアム/イーサリアム: それは与えられているに来たときに!その後、7時間の長い回り道回転、ハードワークの後、そして最終的に解決策を考えました!
    ここに画像を挿入説明
    あなたは、以下に示すエラーメッセージを取得し、I場合は、のような、あなたは私の方法を試すことができます。

    ここに画像を挿入説明

  • オンラインチュートリアルを見つけるためにあなたの仮想マシンがインターネットに接続していることを確認して1.まず、メイク、特に流通ネットワーク

  • ネットワークがまだ与えられている2.場合でも、Ubuntuのパッケージリポジトリの管理を更新しようとすることができます。
    ここに画像を挿入説明

  • 、検索GETH https://launchpad.net/ubuntu/+ppasにGETH PPAのソース、PPAソースを追加し、「他のソフトウェア」に追加して、sudoのgeditのの/etc/apt/sources.list使用しなければならない3。 :ソースファイルに書き込まれた
    ここに画像を挿入説明
    ここに画像を挿入説明
    更新が完了した後、再度上記のコマンドを実行して、あなたが通常の2番目のコマンドを実行することができます。

  • しかし、4番目のコマンドはsudo下図のイーサリアムエラーをインストールapt-getのガチョウは、実施の過程で表示されます。ソリューション私が見つけた:ノンストップこのコマンドを繰り返します
    それが毎回失敗したが、それのダウンロードの進捗状況は累積的であるもののので、私たちはいつも以上のプログレスバープルまでのダウンロードを繰り返すことができます。私はそれがよりよいのためだった翌朝、次は良い夜でした過ごしました:
    ここに画像を挿入説明

インストールが成功したかどうか確認してください。2.:

geth version

ここに画像を挿入説明
この時点で、ゲスのインストールは完了です!

第四に、プライベート・イーサネット・スクエアのチェーンを構築

1.データにプライベートチェーンを保存するために、新しいフォルダなどMYCHAINを作成します。

mkdir Mychain

ここに画像を挿入説明
2.ファイル作成ブロックgenesis.jsonを作成します。

vim genesis.json

次のことを書き込みます:

  • 私は先生のブロックファイルの作成で指定された要件に従って書かれていましたが、エラーメッセージが表示されますが:
    創世記に失敗しました書き込みブロック:サポートされていないフォーク
    注文:eip150Blockが有効になっていない、有効になっていますが、eip155Block 0 AT
    インターネットはビットを検索し、次のように変更します:
{
  "config": {
    "chainId": 666,
    "homesteadBlock": 0,
    "eip150Block": 0,
    "eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
    "eip155Block": 0,
    "eip158Block": 0,
    "byzantiumBlock": 0,
    "constantinopleBlock": 0,
    "petersburgBlock": 0,
    "istanbulBlock": 0,
    "ethash": {}
  },
  "nonce": "0x0",
  "timestamp": "0x5ddf8f3e",
  "extraData": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "gasLimit": "0x47b760",
  "difficulty": "0x00002",
  "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
  "coinbase": "0x0000000000000000000000000000000000000000",
  "alloc": { },
  "number": "0x0",
  "gasUsed": "0x0",
  "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
}

3.初期作成ブロック、およびデータ・ストレージ・パスを指定します。

geth --datadir Mychain init genesis.json

ここに画像を挿入説明
初期化が成功した後に4、およびデータディレクトリMYCHAINにGETHキーストアに2つのフォルダが生成されます。前記GETH / chaindataデータ・ブロックに格納され、キーストアアカウントデータに保存されます
ここに画像を挿入説明
。5. [スタート]プライベートCCN:

geth --identity "TestNode" --rpc --rpcport "8545" --datadir mydata --port "30303" --networkid 6666 --nodiscover console
  • アイデンティティ:指定したノードID
  • RPC:オープンHTTP-RPCサービスを表し;
  • rpcport:指定HTTP-RPCサービスのリスニングポート番号(デフォルトは8545です)。
  • DATADIR:データ・ブロックのチェーンの格納場所を指定します。
  • ポート:指定し使用するポート(デフォルト30303)に接続された他のノードの数。
  • たnetworkID:指定チェーンのプライベートネットワーク番号。
  • nodiscover:同じ初期なじみのないノード構成を防止するために添加閉じるノード検出メカニズム、

それはコンソールにブロックチェーンノードとノードを開始することを意味し、次のページがありました。
ここに画像を挿入説明
この時点で、Ubuntu16.04でのイーサネット専用チェーンスクエアは良いを構築しています!


要約すると:
絶えず与えられた環境を、私は私があまりにも少ない時間法、復元された回数のスナップショットを試して覚えていないことができます。
環境テイクなAの事、他の人が本当に舞台、あなたは私のインストール手順は、さまざまな行となっているので、ものの......常にいくつかの奇妙なエラーが発生します、の段階を設定することはできません同じように設定することができます間違っている、あなたはまだ出会いの問題を構築するために、私の手順に従うことができます。
収穫は、これは私のビルドの本当の意味での独立した環境の最初の時間でなければならないことです。このプロセスでは、成功した構築するよりも大きな収穫が、思考のトラブルシューティングを行う際にエラーが発生しました。いないすべての人々が経験したため、問題を与えられた後、オンラインソリューションがありますが、その後、柔軟に自分の問題を適用するための適切な解決策を見つけ、自分自身の一般的な方向性を決定するために、独自の分析を必要とします。
ここに画像を挿入説明

公開された66元の記事 ウォン称賛26 ビュー10000 +

おすすめ

転載: blog.csdn.net/u011785309/article/details/104778457