Сеть Ethereum стартовала в рабочем режиме, и мы уже на момент 22:00 по МСК имеем работающую ноду, которая майнит на GPU. Небольшой обзор запуска клиента Ethereum Geth ниже.
Устанавливаем клиент Geth на OS Ubuntu
bash <(curl http://install-geth.ethereum.org -L)
Начнется установка клиента и всего необходимого окружения для работы клиента.
Подготовка к генерации Genesis block Ethereum
Разработчики Ethereum специально подготовили скрипт, который поможет сгенерировать Genesis block. Для начала необходимо скачать следующий файл:
curl -O https://raw.githubusercontent.com/ethereum/genesis_block_generator/master/mk_genesis_block.py
Затем:
curl -O https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
sudo pip install bitcoin
И теперь самая магия: сегодня нашелся блок в тестовой сети, хэш которого никто не мог бы предугадать. Соответственно, он лёг в основу генерации Genesis block.
Хэш тестового блока #1028201:
0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa
Теперь зная этот хэш можно сгенерировать через скрипт mk_genesis_block.py Genesis block
python mk_genesis_block.py —extradata 0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa > genesis_block.json
Помните, что вы должны находится в директории, где у вас располагается скрипт mk_genesis_block.py.
После запуска команды генерации Genesis block вы увидите следующее:
lonshakov@ubuntu:~$ python mk_genesis_block.py —extradata 0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa > genesis_block.json
Fetching more transactions… 50
Fetching more transactions… 100
Fetching more transactions… 150
Fetching more transactions… 200
Fetching more transactions… 250
Fetching more transactions… 300
Fetching more transactions… 350
Fetching more transactions… 400
Fetching more transactions… 450
Fetching more transactions… 500
Fetching more transactions… 550
Fetching more transactions… 600
Fetching more transactions… 650
Fetching more transactions… 700
Fetching more transactions… 750
Fetching more transactions… 800
Fetching more transactions… 850
Fetching more transactions… 900
Fetching more transactions… 950
Теперь необходимо подождать. Может зависнуть на каком-то этапе — у нас так было на одном сервере и на одной рабочей машине. Но с n-ого раза все пошло нормально.
Запускаем Geth с Genesis block
geth —genesis genesis-block.json console
Далее идем на официальный сайт Ethereum.org и учимся писать свои первые умные контракты.
Если что пишите на почту lonshakov@bitfork-develop.com или в twitter: @EnsRationis