Filecoin中lotus节点的搭建部署
编写/etc/lotus/config.toml
文件
[API]ListenAddress = "/ip4/0.0.0.0/tcp/1234/http"
[Backup]
[Logging][Logging.SubsystemLevels]
[Libp2p]ListenAddresses = ["/ip4/0.0.0.0/tcp/1347"]ConnMgrLow = 200ConnMgrHigh = 500ConnMgrGrace = "60s"
[Pubsub]
[Client]
[Wallet]
[Fees]
[Chainstore]EnableSplitstore = true[Chainstore.Splitstore]ColdStoreType = "discard"HotStoreFullGCFrequency = 6# 700Gi: 751619276800# 800Gi: 858993459200# 900Gi: 966367641600# 1Ti: 1099511627776HotStoreMaxSpaceTarget = 0HotStoreMaxSpaceThreshold = 150000000000HotstoreMaxSpaceSafetyBuffer = 50000000000
[Cluster]
[Fevm]EnableEthRPC = true
[Events]EnableActorEventsAPI = true
[ChainIndexer]EnableIndexer = true
下载启动程序lotus
root@ip-172-31-0-1:/data/lotus# wget https://github.com/filecoin-project/lotus/releases/download/v1.32.3/lotus_v1.32.3_linux_amd64_v1.tar.gz
root@ip-172-31-0-1:/data/lotus# tar -xf lotus_v1.32.3_linux_amd64_v1.tar.gz -C /usr/local/bin/
编写系统启动文件/etc/systemd/system/lotus-daemon.service
Description=Lotus Daemon
After=network-online.target
Requires=network-online.target[Service]
User=admin
Group=admin
Environment=GOLOG_FILE=/data/lotus/lotus.log
Environment=LOTUS_PATH=/data/lotus
Environment=GOLOG_LOG_FMT=nocolor# For mainnet upgrade
#Environment=LOTUS_FVM_CONCURRENCY=24
Environment=LOTUS_FVM_CONCURRENCY=30Environment=LOTUS_FVM_CONCURRENCY_RESERVED=4
#Environment=LOTUS_FEVM_ENABLEETHRPC=true
#Environment=LOTUS_CHAIN_TIPSET_CACHE=8192
#Environment=LOTUS_CHAIN_INDEX_CACHE=32768ExecStart=/usr/local/bin/lotus daemon --config=/etc/lotus/config.toml
Restart=always
RestartSec=10#LimitNOFILE=100000[Install]
WantedBy=multi-user.target
设置服务开机启动以及启动程序
root@ip-172-31-0-1:/data/lotus# systemctl enable lotus-daemon.service
root@ip-172-31-0-1:/data/lotus# systemctl start lotus-daemon.service
root@ip-172-31-0-1:/data/lotus# systemctl status lotus-daemon.service
● lotus-daemon.service - Lotus DaemonLoaded: loaded (/etc/systemd/system/lotus-daemon.service; enabled; preset:>Active: active (running) since Thu 2025-05-08 08:32:38 UTC; 1h 14min agoMain PID: 40315 (lotus)Tasks: 114 (limit: 304410)Memory: 7.4GCPU: 1h 39min 50.452sCGroup: /system.slice/lotus-daemon.service└─40315 /usr/local/bin/lotus daemon --config=/etc/lotus/config.tomlMay 08 08:32:38 ip-172-31-46-126 systemd[1]: Started lotus-daemon.service - Lot>
May 08 08:32:45 ip-172-31-46-126 lotus[40315]: 2025/05/08 08:32:45 failed to su>
查询节点当前的状态值
admin@ip-172-31-46-126:/data/lotus$ lotus status
Sync Epoch: 4946377
Epochs Behind: 0
Peers to Publish Messages: 347
Peers to Publish Blocks: 371
下载最新的区块数据快照
get-snapshot.sh
#! /bin/bash# Main
trap 'exit' INT
LOTUS_PATH=/data/lotus
snapshot='https://forest-archive.chainsafe.dev/latest/mainnet/'/usr/bin/aria2c -x5 -k1M --dir $LOTUS_PATH $snapshot
echo
echo Done
echo Done
echo Done
导入最新的区块数据快照
import-snapshot.sh
#!/bin/bashtrap 'exit' INT
LOTUS_PATH=/data/lotus
config=/etc/lotus/config.tomlsnapshot=$1cd $LOTUS_PATH
if [[ ! -f $snapshot ]]
thenecho no snaphostexit 1
fi/usr/local/bin/lotus daemon --config=$config --import-snapshot=$snapshot --halt-after-import --remove-existing-chain
echo Done
echo Done
echo Done
导完数据可能需要进行重启lotus,然后进行数据同步
lotus sync wait
lotus节点初始化
lotus-init.sh
#! /bin/bash# Main
trap 'exit' INT
export LOTUS_PATH=/data/lotus
snapshot='https://forest-archive.chainsafe.dev/latest/mainnet/'
config=/etc/lotus/config.tomlcd $LOTUS_PATH
/usr/local/bin/lotus daemon --config=$config --import-snapshot=$snapshot --halt-after-import --remove-existing-chain
echo
echo Done
echo Done
echo Done