Page 62 - Revista_60.pub
P. 62
COMUNIDADE DESIGNSPARK
https://www.rs-online.com/designspark/home
EXPLORAR ETHEREUM COM RASPBERRY PI
$ sudo apt-get update
$ sudo apt-get dist-upgrade
Para não ficar sem memória ao compilar o cliente
Ethereum pode ser preciso libertar memória RAM. Uma boa
forma de o fazer é reduzir a quantidade alocada para a GPU.
Além disso, se não for realmente necessária uma área de
trabalho gráfica, configure o seu sistema para iniciar simples-
mente através da linha de comando.
$ sudo raspi-config
3 → Boot
B1 → Desktop / CLI
$ geth --syncmode light --cache 64 --maxpeers 12
B1 → Console
Se executarmos o geth sem argumentos, inicia-se um
7 → Advanced nó que tentará sincronizar todo o blockchain da mainnet pú-
blica. O qual, tendo um tamanho enorme e estando em cons-
A3 → Memory Split
tante crescimento, pode não ser uma boa ideia para um com-
16 (MB) putador embebido (Single Board Computer). Em vez disso,
iniciamos o nó (node) no modo lightsynchronisation. Isto re-
Reboot colhe os cabeçalhos de bloco quando eles aparecem e outras
partes do blockchain quando são necessários.
Em seguida, instalamos os ficheiros necessários.
Para forçar o fecho do nó (node), basta pressionar
$ sudo apt-get install git golang libgmp3-dev CTRL-C. Para executá-lo como serviço no momento da inici-
alização:
Depois, devemos procurar as fontes para geth, imple-
mentação oficial da linguagem Go de um nó Ethereum $ sudo vi /etc/systemd/system/geth@.service
(Ethereum node), compilar e copiar o executável para /usr/
local/bin/. (substitua "vi" pelo seu editor de texto favorito)
$ mkdir src E introduza:
$ cd src
$ git clone -b release/1.7 https://github.com/ [Unit]
ethereum/go-ethereum.git Description=Ethereum daemon
Requires=network.target
$ cd go-ethereum
$ make [Service]
$ sudo cp build/bin/geth /usr/local/bin/ Type=simple
User=%I
Criar uma conta e testar ExecStart=/usr/local/bin/geth --syncmode light --
cache 64 --maxpeers 12
Restart=on-failure
[Install]
WantedBy=multi-user.target
Guarde o ficheiro. Em seguida, para que o nó (node)
Ethereum seja executado como o usuário “pi”:
$ sudo systemctl enable geth@pi.service
$ sudo systemctl start geth@pi.service
Primeiro, usamos geth para criar uma nova conta.
$ geth account new
Isto gera um novo conjunto de chaves criptográficas e
protegerá a chave privada com uma senha. Devemos notar
que, se usamos essa conta para minar criptomoeda e reali-
zar transações significativas, devemos fazer um backup das
chaves e guardar a chave privada de forma segura.
Agora podemos iniciar o node.
62