Raspberry Pi で Ethereum の fullnode を立てる
Raspberry Pi OS Lite (64-bit)
SSD 2TB
SSH 有効化
USB-OTG 有効化
/Volumes/boot/cmdline.txt を編集
/Volumes/boot/cmdline.txt の rootwait のあとにスペースを空けて、modules-load=dwc2,g_ether を追加
/Volumes/boot/config.txt を編集
dtoverlay=dwc2 をファイル末尾に追加
% echo "dtoverlay=dwc2" >> /Volumes/boot/config.txt
USB boot にすると I/O エラーが出ちゃう?電源?
SSD をフォーマットしてマウント
$ sudo fdisk -l
$ sudo fdisk /dev/sda
d
n
p
あとは default
w
$ sudo mkfs.ext4 /dev/sda1
$ sudo mkdir /mnt/ssd
$ sudo mount -t ext4 /dev/sda1 /mnt/ssd
$ sudo umount /mnt/ssd
$ sudo blkid /dev/sda1
/mnt/ssd/ethereum に geth をインストール
$ tar -xf geth-linux-arm64-1.10.17-25c9b49f.tar.gz
$ tar -xf geth-linux-arm64-1.10.17-25c9b49f.tar.gz
$ sudo cp geth /usr/local/bin
$ sudo nano /etc/systemd/system/geth.service
code:geth.service
Description=geth
After=network.target
Wants=network.target
User=u
Group=u
Type=simple
Restart=always
RestartSec=5
ExecStart=geth --datadir /mnt/ssd/ethereum --http --http.addr 0.0.0.0
WantedBy=default.target
geth を起動
$ sudo systemctl daemon-reload
$ sudo systemctl start geth
$ sudo systemctl status geth
$ sudo systemctl enable geth
$ sudo journalctl -fu geth.service
参考