Листинг 3.1. Файл start_node.sh
geth –datadir node1 –networkid 98760 –dev –rpc –rpcapi="db,eth,net,web3,personal,web3" console
Обратите внимание, что мы указали здесь те же значения параметров datadir, networked, rpc и rpcapi, что и на предыдущем уроке.
Для подключения к запущенному таким способом узлу вы можете использовать ту же самую команду, что и раньше:
$ geth –datadir node1 –networkid 98760 attach ipc://home/book/node1/geth.ipc
Запишите команду подключения в файл attach_node.sh для удобства (листинг 3.2.).
Листинг 3.2. Файл attach_node.sh
geth –datadir node1 –networkid 98760 attach ipc://home/book/node1/geth.ipc
Проверка учетной записи и баланса
Запустите файл attach_node.sh и в приглашении консоли Geth введите команду accounts:
> web3.eth.accounts
["0xd902f8405a6108e8bd9343d1bfccf21a081d2897"]
Оказывается, в нашем тестовом узле уже определен пользователь, хотя мы не создавали его явным образом и не задавали пароль, как на прошлом уроке. У этого пользователя пустой пароль.
Попробуйте также ввести команду web3.version:
> web3.version
{
api: "0.20.1",
ethereum: "0x3f",
network: "98760",
node: "Geth/v1.8.9-unstable/linux-arm/go1.9.6",
whisper: "6.0",
getEthereum: function(callback),
getNetwork: function(callback),
getNode: function(callback),
getWhisper: function(callback)
}
Здесь будут показаны те же самые данные приватной сети, что и на предыдущем уроке.
Проверьте текущий баланс при помощи следующей команды:
> web3.fromWei( eth.getBalance(eth.coinbase) )
1.15792089237316195423570985008687907853269984665640564039457584007913129639927e+59
Как видите, на нашем аккаунте есть уже довольно много монет Ether, хотя мы и не запускали майнинг явным образом. Это все благодаря тестовому режиму geth, выбранному с помощью параметра –dev.
Итоги урока
На третьем уроке вы научились устанавливать узел приватного блокчейна Ethereum на микрокомпьютер Raspberry Pi 3, обладающего оперативной памятью размеров всего 1 Гбайт.
Хотя на этом компьютере не удается запустить майнинг утилитой Geth, вы использовали параметр –dev для создания тестового узла. На таком узле майнинг запускать не нужно, т.к. там уже предусмотрен аккаунт с очень большим балансом.
Урок 4. Учетные записи и перевод средств между аккаунтами
Цель урока: научиться просматривать список аккаунтов, создавать новые аккаунты, познакомиться с криптовалютными единицами в сети Ethereum, а также научиться переводить средства с одного аккаунта на другой с помощью транзакции из консоли Geth.
Практические задания: нужно просмотреть список аккаунтов, добавить новый аккаунт и перевести на него средства с другого аккаунта. Далее нужно посмотреть состояние транзакции и получить ее квитанцию.
К четвертому уроку мы подготовили серверы Ubuntu и Debian и установили на них Go Ethereum (программу Geth), создали узел приватной сети. Мы проделали аналогичную операцию с микрокомпьютером Raspberry Pi 3, установив на него ОС Rasberian и Geth для запуска сети в тестовом режиме с параметром –dev.
Мы научились подключаться к узлу сети в отдельном окне консоли, получив приглашение Geth в виде символа “>” (далее мы будем назвать это приглашение консолью Geth). Напомним, что для выхода из консоли Geth и возврата к системному приглашению ОС нужно ввести команду exit.
Детальное описание программного интерфейса фреймворка Web3 JavaScript API версии 0.2x.x, вы найдете здесь: https://github.com/ethereum/wiki/wiki/JavaScript-API.
На момент подготовки книги версия 1.0 еще не реализована, но вы можете изучить документацию на нее по адресуВ нашем руководстве мы будем приводить примеры использования и стабильной версии 0.2x.x, и бета-версий 1.0-beta.xx.
Просмотр и добавление аккаунтов