現在才玩比特幣屬於高位接盤,但是並不妨礙我們了解它,不求賺錢,只為了滿足一下好奇心。
那麼怎麼玩?首先我們要有個錢包吧,之前國內有各種交易平台,並不需要我們安裝錢包就能交易,但是現在基本已經關停,而且錢包攥在別人手裡,各位心裡不難受嗎。
那為什麼錢包要安裝到 Linux 系統裡呢,因為 bitcoin 錢包很大,有多大?下面會說。而且要聯網同步節點,第一次運行錢包的時候,要開機聯網同步數據,具體時間看你電腦性能。
以我的4 核 4G 內存 5MB 帶寬的雲伺服器為例:跑了大概有兩天多才把數據同步完。如果你安裝到你的 Windows10 上,你電腦要開機兩天兩夜,而且同步節點時會佔用 CPU,這兩天這台電腦使用起來都不痛快,最最最主要的是會佔用你寶貴的硬碟空間 o_o ...
話不多說下面開始教一下大家怎麼安裝錢包:
個人觀點: 比特幣、以太坊、門羅幣等虛擬貨幣我覺得水太深,各位小白別玩,但是它們的區塊鏈技術,我覺得很可能是互聯網的未來,至少是未來的一部分
安裝 bitcoin 錢包 (v0.21.0)#
安裝 bitcoincore 全節點需要 400GB 的硬碟空間,如果硬碟空間不足可以安裝 bitcoincore 輕節點,如何選擇全節點還是輕節點在後面會說。
使用輕節點需要大約 7GB 的硬碟空間
- 下載 bitcoin
https://bitcoincore.org/en/download/
wget https://bitcoincore.org/bin/bitcoin-core-0.21.0/bitcoin-0.21.0-x86_64-linux-gnu.tar.gz
- 下載解壓後
tar xzf bitcoin-0.21.0-x86_64-linux-gnu.tar.gz
- 使用圖形介面安裝
sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-0.21.0/bin/*
/usr/local/bin/bitcoin-qt
- 安裝完成,開始同步區塊(這個時候可以關閉 GUI 程序,剩下的使用命令行操作)
bitcoin 配置#
- bitcoin 的默認配置目錄為~/.bitcoin/bitcoin.conf,填寫以下配置
# ~/.bitcoin/bitcoin.conf
datadir=/opt/btc/datadir
# 設置數據庫緩存大小
dbcache=10240
# 交易索引 txindex=1就代表全節點 不填寫就是輕節點
# txindex=1
# 是否開啟修剪模式 (https://bitcoin.org/en/full-node#reduce-storage)
prune=10240
# rpc訪問的user
rpcuser=zhaoyang
# rpc訪問的password
rpcpassword=zy980355088
# 後台運行
daemon=1
server=1
rest=1
rpcbind=0.0.0.0:8332
rpcallowip=0.0.0.0/0
deprecatedrpc=accounts
# 閃電網絡需要下面兩行配置的支持
# 允許在本機端口28332上廣播原始區塊信息
zmqpubrawblock=tcp://127.0.0.1:28332
# 允許在本機端口28333上廣播原始交易信息
zmqpubrawtx=tcp://127.0.0.1:28333
命令使用說明#
啟動 bitcoin
bitcoind -daemon
關閉 bitcoin,一定要用以下命令,否則會有可能導致數據異常,需要重新同步數據
bitcoin-cli stop
一些其他命令
# 創建錢包
bitcoin-cli createwallet "zhaoyang"
# 生成錢包地址
bitcoin-cli getnewaddress "test" #"test"是輸入的帳號label
# 獲取所有錢包地址及其帳號名
bitcoin-cli listreceivedbyaddress 1 true
# 查看網絡狀態:
bitcoin-cli getnetworkinfo
# 查看網絡節點:
bitcoin-cli getpeerinfo
# 查看區塊鏈信息:如同步進度、
bitcoin-cli getblockchaininfo
# 查看所有命令
bitcoin-cli help
啟動後錢包會自動同步區塊,可以打開日誌查看具體同步情況
tail -f nohup.out
進入 bitcoin 安裝目錄
cd $HOME/.bitcoin
ls
banlist.dat bitcoind.pid blocks chainstate debug.log peers.dat wallets
ls wallets/
database db.log wallet.dat
bitcoind.pid bitcoind 運行的進程文件
blocks 區塊鏈數據文件
chainstate 區塊鏈狀態的數據庫使用LevelDB存儲
db.log 數據庫日誌文件
debug.log 運行時的日誌文件
wallet.dat 錢包文件(這個要劃重點了,此文件保存了我們錢包生成的私鑰,特別重要,建議通過編寫shell腳本或者使用後台程序每天做個備份)
錢包命令介紹
bitcoin-cli getwalletinfo 查看錢包詳情,在0.18版本中,以前的getinfo已經取消
{
"walletname": "",
"walletversion": 169900, 錢包版本
"balance": 0.00000000, 錢包餘額
"unconfirmed_balance": 0.00000000, 未確認餘額
"immature_balance": 0.00000000, 這個暫時還不清楚
"txcount": 0, 錢包內交易數量
"keypoololdest": 1562826486, 密鑰池內最早密鑰創建時間
"keypoolsize": 1000, 密鑰池大小
"keypoolsize_hd_internal": 1000,
"paytxfee": 0.00000000, 手續費率(這個比較重要,後面單獨講)
"hdseedid": "ed13b2019c2e28e9dc84cf7124ba2e36cebcb656",
"private_keys_enabled": true
}
bitcoin-cli getblockchaininfo 查看區塊詳情
{
"chain": "main",
"blocks": 238558, 錢包當前區塊(btc安裝啟動後一般1-2天可以同步到最新區塊高度)
"headers": 584893, 當前最新區塊高度
.... 後面還有其他信息,我們暫不關注
}
bitcoin-cli sendtoaddress 轉帳介面(後面具體介紹)
Response:
1. "address" (string, required) 接收地址
2. "amount" (numeric or string, required) 轉帳金額
Result:
"txid" (string) 唯一標識tx_id
Examples:
> bitcoin-cli sendtoaddress "bc1q7wuvm9q4s0gr9mtqtn2wamjx0462hg43g8h8ak" 0.1
> curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "sendtoaddress", "params": ["bc1q7wuvm9q4s0gr9mtqtn2wamjx0462hg43g8h8ak", 0.1] }' -H 'content-type: text/plain;' http://127.0.0.1:8332/
Github 地址#
官網#
https://bitcoincore.org/en/download/
下載地址#
門羅幣#
- 官網(下載錢包):https://www.getmonero.org/downloads/
- 下載挖礦程序:https://github.com/xmrig/xmrig/releases
- 礦池:mine.c3pool.com:13333