Prepare a full node for ETHW

1. Setup

  • A fast CPU with 4+ cores

  • 16GB+ of RAM

  • At least 2 TB space of fast SSD drive

  • 25 MBit/s bandwith

1.2 ETHW source code

The golang implementation of the ETHW protocol is at GitHub https://github.com/ethereumpow/go-ethereum

Download the code and build it

git clone https://github.com/ethereumpow/go-ethereum.git
cd go-ethereum
make

2. Prepare

The ethw fork need to prepare the data before Ethereum total terminal difficulty(TTD) was reached. There are several ways to prepare chinadata:

2.1 Download the prepared data

The following commands were run at ubuntu 22.04 LTS platform. The downloaded file is about1.1T. You can download the file chaindata_15509444.tar.lz4 via BT network or HTTP.

BT is recommeded download method since the p2p network provides better downlaod speed.

2.1.1 Download data file

Install download tool packages

sudo apt install transmission-cli -y
sudo apt install lz4 -y
sudo apt install aria2 -y

The file can be download by BT transmission:

cd YOUR_DOWNLOAD_DIR

wget http://snapshot.ethwscan.com/15509444.torrent
# check your download
openssl sha256 15509444.torrent 
SHA256(15509444.torrent)= ecf242df51d286906c2ef3a06bdba5bed608881a61f49a76a990d1ba57bd8ff2
transmission-cli -w .  15509444.torrent

or download from magnet:

magnet:?xt=urn:btih:76612d6d83fa1a2b2dc4fa9f9059b4e8409d1328&dn=chaindata%5F15509444.tar.lz4&tr=udp%3A%2F%2Ftracker.ethereumpow.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2F9.rarbg.com%3A2810%2Fannounce&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A6969%2Fannounce&tr=http%3A%2F%2Ftracker.openbittorrent.com%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=https%3A%2F%2Fopentracker.i2p.rocks%3A443%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker1.bt.moack.co.kr%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.moeking.me%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.dler.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fchouchou.top%3A8080%2Fannounce&tr=udp%3A%2F%2Fbt.oiyo.tk%3A6969%2Fannounce&tr=https%3A%2F%2Ftracker.nanoha.org%3A443%2Fannounce&tr=https%3A%2F%2Ftracker.lilithraws.org%3A443%2Fannounce&tr=http%3A%2F%2Ftracker3.ctix.cn%3A8080%2Fannounce&tr=http%3A%2F%2Ftracker.nucozer-tracker.ml%3A2710%2Fannounce&ws=http%3A%2F%2Fsnapshot.ethwscan.com%2Fchaindata%5F15509444.tar.lz4&ws=http%3A%2F%2Fsnapshot-us1.ethwscan.com%2Fchaindata%5F15509444.tar.lz4&ws=http%3A%2F%2Fsnapshot-eu1.ethwscan.com%2Fchaindata%5F15509444.tar.lz4

or download from http

aria2c -s16 -x16 -k100M http://snapshot.ethwscan.com/chaindata_15509444.tar.lz4

After download is finished, verify download file

openssl sha256  chaindata_15509444.tar.lz4 
SHA256(chaindata_15509444.tar.lz4)= c69fb808346f2efdf6b080cfa034b3dcbdce981068bc42ac55db31a2c3d2eea0

2.1.2 Decompress and unpack the files

lz4 -cd chaindata_15509444.tar.lz4 | tar xf -

2.1.3 Verify chaindata in a stand-alone network(optional)

# create a new dataspace
geth --datadir YOUR_DATA_SPACE
# Ctrl+C to quit 
rm -fr YOUR_DATA_SPACE/geth/chaindata
mv YOUR_DOWNLOAD_DIR/chaindata YOUR_DATA_SPACE/geth/

geth --datadir YOUR_DATA_SPACE --syncmode full --nodiscover console

# Check log is clean
# check block number 
> eth.blockNumber
15509444

2.2 sync the chaindata from Ethereum network

Also, you can do a full sync from ethereum network to get the chinadata before ETHW fork(It could take one week or two weeks).

Stop the sync before total terminal difficulty(TTD) 58,750,000,000,000,000,000,000 is reached.

3. Run

To run a fullnode, execute this command after ETHW fork

geth --datadir YOUR_DATA_SPACE --syncmode full

Last updated