Skip to main content

Run a Linea Node

The Linea network only produces blocks if there is currently at least 1 pending transaction. If you see no incoming blocks to your node, that does not mean that the node is not syncing.

If you don't see any incoming blocks, check and make sure that you have at least one peer from the bootnodes below; otherwise, you might not be connected to the Linea network.

Interested in running a Linea node yourself? Of course you are.​

If you're unfamiliar with how public blockchain networks share the responsibility of keeping common resources secure, check out this explainer from MetaMask.

note

Running a validator node is currently not possible. The Ethereum client being used in this walkthrough (Geth) will soon be updated, including breaking changes. Please get in touch to make sure we keep you posted if you decide to run a node. You can run a Dockerized version as long as you keep the same parameters.

How to run a Linea node

Prerequisites​

Set up the required and recommended hardware and all the utilities. You can find the recommendations from Geth here

Step 1​

Download v1.11.6 Geth (latest untested) and install using the instructions provided here

Step 2​

Download genesis.json

genesis.json

Step 3​

Define a volume of at least 100GB, more if you want to future-proof your node, and mount the Geth datadir to geth-linea-data

Step 4​

Bootstrap the node using the following command

geth --datadir ./geth-linea-data init ./genesis.json

Step 5​

Start the node with the following command

geth \
--datadir $HOME/geth-linea-data \
--networkid 59144 \
--miner.gasprice 1000000000 \
--miner.gaslimit '0x3A2C940' \
--rpc.allow-unprotected-txs \
--txpool.accountqueue 50000 \
--txpool.globalqueue 50000 \
--txpool.globalslots 50000 \
--txpool.pricelimit 1000000000 \
--rpc.txfeecap 100 \
--gpo.maxprice 100000000000000 \
--txpool.nolocals \
--http --http.addr '127.0.0.1' --http.port 8545 --http.corsdomain '*' --http.api 'web3,eth,txpool,net' --http.vhosts='*' \
--ws --ws.addr '127.0.0.1' --ws.port 8546 --ws.origins '*' --ws.api 'eth,net,web3,txpool' \
--bootnodes "enode://ca2f06aa93728e2883ff02b0c2076329e475fe667a48035b4f77711ea41a73cf6cb2ff232804c49538ad77794185d83295b57ddd2be79eefc50a9dd5c48bbb2e@3.128.49.168:30303,enode://eef91d714494a1ceb6e06e5ce96fe5d7d25d3701b2d2e68c042b33d5fa0e4bf134116e06947b3f40b0f22db08f104504dd2e5c790d8bcbb6bfb1b7f4f85313ec@3.130.182.201:30303,enode://cfd472842582c422c7c98b0f2d04c6bf21d1afb2c767f72b032f7ea89c03a7abdaf4855b7cb2dc9ae7509836064ba8d817572cf7421ba106ac87857836fa1d1b@3.136.114.192:30303" \
--syncmode full \
--metrics --pprof --pprof.addr "127.0.0.1" --pprof.port 9545 \
--verbosity 3

If you're having trouble with your node, hop over to the Support page and open a ticket with our agents.