Bitcoin-Cli
完全刪除文件後從文件導入錢包的正確方法是什麼
只是想問一個關於“importwallet”bitcoin-cli 命令的問題。
啟動我的 bitcoind 守護程序後,創建了一個錢包,用密碼保護並備份到一個文件:
bitcoin-cli createwallet wallet1 bitcoin-cli encryptwallet mypassword bitcoin-cli backupwallet ~/wallet1.backup
我想測試我是否能夠恢復我的備份錢包。這是我正在測試的:
bitcoin-cli stop rm -Rf ~./bitcoin/wallets/wallet1
然後重新啟動我的 bitcoind 伺服器。此時我想導入我的錢包。我試試這個:
$ bitcoin-cli importwallet ~/wallet1.backup error code: -18 error message: No wallet is loaded. Load a wallet using loadwallet or create a new one with createwallet. (Note: A default wallet is no longer automatically created)
但正如你所見,bitcoin-cli 請求創建一個新錢包。只是為了導入現有的?我不明白這一點。
對於這個特定範例,導入錢包的正確方法應該是什麼?天吶!
您正在尋找的是
restorewallet
RPC。截至 2022 年 2 月 2 日,這尚未包含在 Bitcoin Core 的版本中(儘管它位於 GitHub 上的主程式碼分支中)。它將包含在 v23 版本中,預計在 2022 年 4 月發布。restorewallet "wallet_name" "backup_file" ( load_on_startup ) Restore and loads a wallet from backup. Arguments: 1. wallet_name (string, required) The name that will be applied to the restored wallet 2. backup_file (string, required) The backup file that will be used to restore the wallet. 3. load_on_startup (boolean, optional) Save wallet name to persistent settings and load on startup. True to add wallet to startup list, false to remove, null to leave unchanged. Result: { (json object) "name" : "str", (string) The wallet name if restored successfully. "warning" : "str" (string) Warning message if wallet was not loaded cleanly. } Examples: > bitcoin-cli restorewallet "testwallet" "home\backups\backup-file.bak" > curl --user myusername --data-binary '{"jsonrpc": "1.0", "id": "curltest", "method": "restorewallet", "params": ["testwallet" "home\backups\backup-file.bak"]}' -H 'content-type: text/plain;' http://127.0.0.1:8332/ > bitcoin-cli -named restorewallet wallet_name=testwallet backup_file='home\backups\backup-file.bak"' load_on_startup=true > curl --user myusername --data-binary '{"jsonrpc": "1.0", "id": "curltest", "method": "restorewallet", "params": {"wallet_name":"testwallet","backup_file":"home\\backups\\backup-file.bak\"","load_on_startup":true}}' -H 'content-type: text/plain;' http://127.0.0.1:8332/
importwallet
RPC 用於不同的場景,從轉儲文件中導入密鑰列表(由 RPC 生成的明文密鑰列表)dumpwallet
。要恢復 v22 及以下版本的備份,只需:
- 導航到您
wallets/
的比特幣數據目錄中的目錄- 在裡面創建一個新目錄,
wallets/
其中包含您為恢復的錢包選擇的唯一名稱。- 將錢封包件複製到這個新創建的目錄中,並將其重命名為
wallet.dat
- 啟動比特幣核心,你應該可以載入錢包了。