csdn部落格:
安裝geth
root@dserv834-mtl8:~# apt-get install software-properties-common
root@dserv834-mtl8:~# add-apt-repository -y ppa:ethereum/ethereum
root@dserv834-mtl8:~# apt-get update
root@dserv834-mtl8:~# apt-get install ethereum
安裝後查詢到geth版本即為安裝成功
root@dserv834-mtl8:~# which geth ###檢視geth路徑
/usr/bin/geth
root@dserv834-mtl8:~# geth version
geth
version: 1.8.12-stable
git commit: 37685930d953bcbe023f9bc65b135a8d8b8f1488
architecture: amd64
protocol versions: [63 62]
network id: 1
go version: go1.10
operating system: linux
gopath=
goroot=/usr/lib/go-1.10
建立geth啟動/停止指令碼
檢視本地ip位址,得到內網位址為173.209.49.10
root@dserv834-mtl8:~# ifconfig -a
eno1 link encap:ethernet hwaddr ac:1f:6b:82:8c:f4
inet addr:173.209.49.10 bcast:173.209.49.15 mask:255.255.255.248
inet6 addr: fe80::ae1f:6bff:fe82:8cf4/64 scope:link
up broadcast running multicast mtu:1500 metric:1
rx packets:164109642 errors:0 dropped:10 overruns:0 frame:0
tx packets:143189840 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
rx bytes:87852826043 (87.8 gb) tx bytes:35500135072 (35.5 gb)
memory:df200000-df27ffff
建立geth啟動指令碼starteth.sh,將第二行開始的指令碼複製儲存,需要修改rpcaddr的ip,datadir可以省略,一般將datadir改為大容量的資料盤目錄
root@dserv834-mtl8:~# vi starteth.sh
#!/bin/bash
nohup geth --rpcaddr "173.209.49.10" --rpc --rpccorsdomain="*" --datadir "/data/ethereum" >> geth.log 2>&1 &
建立geth停止指令碼stopeth.sh,將第二行開始的指令碼複製儲存
root@dserv834-mtl8:~# more stopeth.sh
#!/bin/bash
pids=`ps -ef |grep geth |grep -v grep | awk ''`
if [ "$pids" != "" ]; then
kill -9 $pids
else
echo `date +%f" "%h:%m:%s` "geth is not runing!"
fi
配置指令碼執行許可權
root@dserv834-mtl8:~# chmod u+x st*.sh
root@dserv834-mtl8:~# ls -la *.sh
-rwxr--r-- 1 root root 95 jul 10 11:41 starteth.sh
-rwxr--r-- 1 root root 171 jul 11 21:49 stopeth.sh
啟動geth程式同步區塊資料
啟動geth開始同步資料,通過檢視geth.log來監控geth的同步情況
root@dserv834-mtl8:~# ./starteth.sh
root@dserv834-mtl8:~# tail -f geth.log
info [07-11|21:51:06.609] imported new chain segment blocks=1 txs=55 mgas=7.992 elapsed=368.336ms mgasps=21.697 number=5948083 hash=14c024…a9d1bb cache=267.07mb
info [07-11|21:51:10.051] imported new chain segment blocks=1 txs=43 mgas=7.987 elapsed=105.155ms mgasps=75.959 number=5948084 hash=ede212…56e3b8 cache=267.22mb
info [07-11|21:51:13.530] imported new chain segment blocks=1 txs=133 mgas=7.961 elapsed=431.951ms mgasps=18.431 number=5948085 hash=533343…c40637 cache=267.59mb
info [07-11|21:51:17.785] imported new chain segment blocks=1 txs=51 mgas=7.982 elapsed=304.528ms mgasps=26.211 number=5948086 hash=8918b3…263ea8 cache=268.06mb
..........
一般情況下geth從0開始同步需要3天左右的時間,由伺服器的頻寬和效能決定,可以購買境外的伺服器,如香港的阿里雲。
判斷同步完成
geth在同步的時候,通過geth console檢視eth.blocknumber命令查詢區塊高度,如果得到的結果是0,說明沒有同步完成,如果得到最新的區塊,說明已經同步到最新區塊了。
以太坊上搭建自己的私有鏈
首先介紹一下什麼是公有鏈和私有鏈 公有鏈 世界上任何乙個人都可以參與的區塊鏈。使用者可以檢視,可以傳送交易,也可以參與保持資料一致性的運算等。私有鏈 完全的私有鏈是指寫許可權是由乙個人或乙個單個組織控制的鏈。私有鏈的讀許可權是可以公開的或者是有限度的在一定範圍公開的。比如私有鏈可以用在資料庫的管理,...
ubuntu14 04安裝以太坊私有鏈
1.安裝go。使用共享資料夾,然後解壓 tar zxvf go1.9.5.linux amd64.tar.gz 將解壓檔案sudo mv go usr local 在使用軟連線 ln s usr local go bin go usr bin go 此時可以用go version檢視安裝是否成功。2...
(二)構建以太坊私有鏈
因為目前以太坊的主網和測試網都很難挖到以太幣,所以我們需要自己搭建私鏈來做實驗。1 建立初始化創世塊檔案genesis.json,放置到geth安裝目錄 也可以選其他目錄,檔案裡面各個欄位的含義可以從官網查到 config 2 cmd進入geth安裝目錄,初始化創世塊 3 建立私有鏈,開啟控制台 4...