Skip to content

Commit df985a2

Browse files
TippyFlitsUKjennijuju
authored andcommitted
GITBOOK-3: No subject
1 parent 897e98d commit df985a2

File tree

4 files changed

+179
-1
lines changed

4 files changed

+179
-1
lines changed

SUMMARY.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,9 @@
8080
* [Storage](storage-providers/skills/storage.md)
8181
* [Sales](storage-providers/skills/sales.md)
8282
* [Industry](storage-providers/skills/industry.md)
83-
* [PDP](storage-providers/pdp.md)
83+
* [PDP](storage-providers/pdp/README.md)
84+
* [Prerequisites](storage-providers/pdp/prerequisites.md)
85+
* [Installing and Running Lotus](storage-providers/pdp/installing-and-running-lotus.md)
8486

8587
## Nodes
8688

File renamed without changes.
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
---
2+
description: >-
3+
Lotus is your gateway to the Filecoin network. It syncs the chain, manages
4+
wallets, and is required for Curio to interact with your node.
5+
---
6+
7+
# Installing and Running Lotus
8+
9+
<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><a href="https://lotus.filecoin.io/lotus/get-started/what-is-lotus/">Lotus Documentation</a></td><td></td></tr><tr><td><a href="https://filecoinproject.slack.com/archives/CPFTWMY7N">Filecoin Slack - #fil-lotus-help</a></td><td></td></tr></tbody></table>
10+
11+
### Build Lotus Daemon
12+
13+
Clone and check out Lotus:
14+
15+
```sh
16+
git clone https://github.com/filecoin-project/lotus.git
17+
cd lotus
18+
git checkout $(curl -s https://api.github.com/repos/filecoin-project/lotus/releases/latest | jq -r .tag_name)
19+
```
20+
21+
#### **Build and Install for Mainnet**
22+
23+
```sh
24+
make clean lotus
25+
sudo make install-daemon
26+
lotus --version
27+
```
28+
29+
#### **Build and Install for Calibration**
30+
31+
```sh
32+
make clean && make GOFLAGS="-tags=calibnet" lotus
33+
sudo make install-daemon
34+
lotus --version
35+
```
36+
37+
{% hint style="success" %}
38+
You should see something like: lotus version 1.32.2+mainnet+git.ff88d8269
39+
{% endhint %}
40+
41+
***
42+
43+
### Import a Snapshot and Start the Daemon
44+
45+
Download the Snapshot
46+
47+
#### Mainnet:
48+
49+
```sh
50+
aria2c -x5 -o snapshot.car.zst https://forest-archive.chainsafe.dev/latest/mainnet/
51+
```
52+
53+
#### Calibration:
54+
55+
```sh
56+
aria2c -x5 -o snapshot.car.zst https://forest-archive.chainsafe.dev/latest/calibnet/
57+
```
58+
59+
#### Import and Start the Daemon
60+
61+
```sh
62+
lotus daemon --import-snapshot snapshot.car.zst --remove-existing-chain --halt-after-import
63+
nohup lotus daemon > ~/lotus.log 2>&1 &
64+
```
65+
66+
#### **Monitor Sync Progress**
67+
68+
```sh
69+
lotus sync wait
70+
```
71+
72+
#### To monitor continuously:
73+
74+
```sh
75+
lotus sync wait --watch
76+
```
77+
78+
#### **Monitor Logs**
79+
80+
```sh
81+
tail -f ~/lotus.log
82+
```
83+
84+
***
85+
86+
### Create Wallets
87+
88+
You’ll need to create **two BLS wallets**:
89+
90+
* One for **owner**: used to fund sector pledges and submit proofs
91+
* One for **worker**: used to publish and manage storage deals
92+
93+
```sh
94+
lotus wallet new bls # Create owner wallet
95+
lotus wallet new bls # Create worker wallet
96+
lotus wallet list # List all created wallets
97+
```
98+
99+
Make sure to send a small amount of FIL to each wallet - we recommend 1 FIL per wallet to ensure the creation of your Storage Provider in Curio.
100+
101+
{% hint style="info" %}
102+
Both wallets will be used during Curio initialisation.
103+
{% endhint %}
104+
105+
{% hint style="danger" %}
106+
[Back up](https://lotus.filecoin.io/lotus/manage/manage-fil/#exporting-and-importing-addresses) your wallet keys securely before continuing. Losing them will result in permanent loss of access to funds.
107+
{% endhint %}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
---
2+
description: >-
3+
This guide walks you through setting up a PDP-enabled Filecoin Storage
4+
Provider using Lotus, YugabyteDB, and Curio
5+
---
6+
7+
# Prerequisites
8+
9+
{% hint style="info" %}
10+
⚠️ Note: This guide is written specifically for Ubuntu 22.04. If you are using a different Linux distribution, refer to the relevant documentation for package installation and compatibility.
11+
{% endhint %}
12+
13+
Before starting, make sure you have a user with **sudo privileges**. This section prepares your system for the PDP stack.
14+
15+
### System Package Installation
16+
17+
```sh
18+
sudo apt update && sudo apt upgrade -y && sudo apt install -y \
19+
mesa-opencl-icd ocl-icd-opencl-dev gcc git jq pkg-config curl clang \
20+
build-essential hwloc libhwloc-dev libarchive-dev wget ntp python-is-python3 aria2
21+
```
22+
23+
***
24+
25+
### Install Go
26+
27+
```sh
28+
sudo rm -rf /usr/local/go
29+
wget https://go.dev/dl/go1.23.7.linux-amd64.tar.gz
30+
sudo tar -C /usr/local -xzf go1.23.7.linux-amd64.tar.gz
31+
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
32+
source ~/.bashrc
33+
go version
34+
```
35+
36+
{% hint style="success" %}
37+
You should see something like: go version go1.23.7 linux/amd64
38+
{% endhint %}
39+
40+
***
41+
42+
### Install Rust
43+
44+
```sh
45+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
46+
```
47+
48+
{% hint style="info" %}
49+
When prompted, choose the option 1) Proceed with standard installation (default — just press Enter).
50+
{% endhint %}
51+
52+
```sh
53+
source $HOME/.cargo/env
54+
rustc --version
55+
```
56+
57+
{% hint style="success" %}
58+
You should see something like: rustc 1.86.0 (05f9846f8 2025-03-31)
59+
{% endhint %}
60+
61+
***
62+
63+
### Add Go and Rust to Secure Sudo Path
64+
65+
```sh
66+
sudo tee /etc/sudoers.d/dev-paths <<EOF
67+
Defaults secure_path="/usr/local/go/bin:$HOME/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
68+
EOF
69+
```

0 commit comments

Comments
 (0)