Go-Ethereum

如何將霧連接到測試網客戶端?

  • January 29, 2016

我在consensys testnet上執行一個 geth 實例。我使用以下命令啟動它:

geth --testnet --networkid=2 --bootnodes=enode://b1217cbaa440e35ed471157123fe468e19e8b5ad5bedb4b1fdbcbdab6fb2f5ed3e95dd9c24a22a79fdb2352204cea207df27d92bfd21bfd41545e8b16f637499@104.44.138.37:30303 --genesis=/tmp/genesis.json --datadir=~/.ethereum-consensys-public-testnet

現在我試圖在此之上執行霧,但它根本不起作用,因為它無法連接到 geth IPC。

$ mist
CONNECT to IPC PATH: /home/user/.ethereum/geth.ipc
NODECONNECTOR ERROR { [Error: connect ECONNREFUSED /home/user/.ethereum/geth.ipc]
 code: 'ECONNREFUSED',
 errno: 'ECONNREFUSED',
 syscall: 'connect',
 address: '/home/user/.ethereum/geth.ipc' }
Node type:  geth
Network:  main

它嘗試連接到主網路 IPC。我在霧命令上嘗試了幾個標誌,但它似乎無法辨識它們。如何將霧連接到測試網客戶端?

將你的 ~/.ethereum 錢包移動到不同的位置(如果你已經有一個,以免弄亂你的生活資料),在你的 geth 線上取下 –datadir ,重新執行一切,它應該可以工作。~/.ethereum 在 Mist 中是硬編碼的。(目前?)

https://github.com/ethereum/mist/blob/v0.3.8/modules/ipc/getIpcPath.js

module.exports = function() {
   var p = require('path');
   var path = global.path.HOME;

   if(process.platform === 'darwin')
       path += '/Library/Ethereum/geth.ipc';

   if(process.platform === 'freebsd' ||
      process.platform === 'linux' ||
      process.platform === 'sunos')
       path += '/.ethereum/geth.ipc';

   if(process.platform === 'win32')
       path = '\\\\.\\pipe\\geth.ipc';

   console.log('CONNECT to IPC PATH: '+ path);
   return path;
};

或者,您可以將 .ipc 文件放在 Mist 正在尋找的正確位置(在 ~/.ethereum 目錄中從 geth 和 datadir 指定一個 IPC 文件),但對我來說這似乎更複雜.

引用自:https://ethereum.stackexchange.com/questions/716